このディレクトリの索引

'LU分解'([],[]) :- !.
'LU分解'([[P|R1]|R2],X) :-
      'LU分解の二'(R1,P,L1),
      'LU分解の三'(R2,L2,L3),
      'LU分解'(L3,R),
      'LU分解の結合'(P,L1,L2,R,X).

'LU分解の二'(N,N,_,_,_,[]) :- !. 
'LU分解の二'(J,N,K,P,L1,[W|R]) :-
      list_nth(K,L1,L),
      list_nth(J,L,V),
      W is V / P,
      J2 is J + 1,
      'LU分解の二'(J2,N,K,P,L1,R).

'LU分解の三'(N,N,_,_,_,[],[]) :- !. 
'LU分解の三'(I,N,K,L11,L12,[A|R1],[L2|R2]) :-
      list_nth(I,L1,L),
      list_nth(K,L,Q),
      J is K + 1,
      'LU分解の四'(J,N,K,Q,L11,L12,[A|L2]),
      I2 is I + 1,
      'LU分解の三'(I2,N,K,L11,L12,R1,R2).

'LU分解の四'(N,N,_,_,_,_,[]) :- !. 
'LU分解の四'(J,N,K,Q,L1,L12,[W|R]) :-
      list_nth(I,L1,L),
      list_nth(J,L,Q1),
      list_nth(J,L12,Q2),
      W is Q1 - Q2 * Q,
      J2 is J + 1,
      'LU分解の四'(J2,N,K,Q,L11,L12,R).