:- use_module(library(clpr)).   % lade CLPR-Bibliothek hinzu

% Schaltkreisanalyse
% Schaltkreise sind wider(Ohm), reihe(S1,S2), parallel(S1,S2)

% sk(SK,V,I): V Volt an Schaltkreis SK: Stromdurchfluss I

% Ohmsche Gesetzes:
sk(wider(O),V,I) :- { V = O * I }.

% Reihenschaltung: Kirchhoffsches Gesetz
sk(reihe(S1,S2),V,I) :-
        { I = I1, I=I2, V = V1+V2 },
        sk(S1,V1,I1),
        sk(S2,V2,I2).

% Parallelschaltung: Kirchhoffsches Gesetz
sk(parallel(S1,S2),V,I) :-
        { I = I1+I2, V = V1, V = V2 },
        sk(S1,V1,I1),
        sk(S2,V2,I2).

% ?- sk(reihe(wider(470),wider(180)), 5, I).

% ?- sk(reihe(reihe(wider(R),wider(R)),wider(R)), 5, 0.1).
