. , . , . - , , , , , .
. - , , , : . ʳ , . [ ] , . , .. , , '', .(, [ ]),
, .b b.. , , . , , : [, VI, b, [X, Y]]
, . [ | Q], [P | ] à = Q= .
. . , , . ASCII, , "system" : [115, 121, 115, 116, 101, 109].
17. .
, , X , a Y . , : [X | Y]. , :
[fiesta,fusion,focus,tscont].
, , . , , . , . , , . , , . . , , : .
, , , ' , ' , . , .
: (,Y) (), , ' X, , ' Y. , .
|
|
, X Y, X Y. : (,[ |_]).
, X , X . _ . , .
, X , , Y. , , , X ! . : (,[_ | Y]): (,Y).
, X , X . _ ' , . .
. , , , . , .
, , . , , , .
, .
18. : .
, ( ) , . :
: you are a computer ( )
: am not a computer ( )
: do you speak french ( ?)
: no speak german (ͳ, )
䳿:
1. , .
2. you .
3. are am not.
4. french german.
5. do no.
, ,
. , . (, Y) , X Y. X Y , , : [this, is, a, sentence] ( ).
,
?- ([(do, you, know, french],X). ( ?)
X=[no, i, know, german] (, ).
, , , :
|
|
([], []).
, 䳿 :
1. .
2. .
3. , , [].
, . (, Y), , X Y. - , , . - (, ), , X . , :
(you, i).
(are,[am, not]).
(french, german).
(do, no).
(, ). /* - */
- , ', [|] , . :
([],[]).
([|],[|Y]):-
(, X), (, Y).
19. : .
, . (X,Y) , ( ), X Y X Y. , (, ) , (, ) . (, ). , , , :
1. , . , (, )- ( ).
2. . , (, ). '' '' - .
3. ˳ . , , . , (, ), , '', (, ).
4. , , , (, ). , .
5. , , , , (, ). .
( ). . name('). ֳ name(X,Y) , , X, , , Y ( ASCII).
:
(X,Y):- name(X, L), name(Y,M), _1(L,M).
, name, _1 ( ) . _1 , . , , :
|
|
_1([], [_|_]).
:
_1([ |_],[|_]):- <Y.
,
(X,Y):- name(X,L), name(Y,M), _1(L,M).
_1([], [_|_]).
_1([|_], [Y|_]):- X<Y.
_1([|Q],[R|S]):- P=R, _1(Q,S).
20. .
, , , ' . , :
([a,b,c], [3,2,1], [a,b,c, 3,2,1]).
, :
?- ([alpha, beta],[gamma, delta],X).
X=[alpha, beta, gamma, delta]
:
([], L, L).
([|L1],L2,[|L3]):- (L1, L2, L3).
, . - , , . , :
1. (X) .
2. (L3) (L2) (L1).
3. , 2, .
4. , , , .
, . (X,Y), X ' , Y , .
_ ( , ) . ϳ , , _ , :
_([|], _):- (, _),
_(, _),
(_, _, _).
21. .
, :
(, ).
(, ).