.


:




:

































 

 

 

 





, , . Prolog ; (), (). . ( ). assert, asserts, assertz retract. assertt)

(assertion) , .. .

retract< )

: , . Prolog:

?- crisis.

no

?- assert crisis).

yes

?- crisis,

yes

?- retractf crisis).

?- crises,

, , "" . assert retract . , , :


7.



nice:-

sunshine, not raining.

funny:-

sunshine, raining.

disgusting:-

raining, fog.

raining. fog.

, , , .

?- nice.

?- disgusting.

yes

?- retract [ fog).

yes

?- disgusting.

no

?- assert! sunshine).

yes

?- funny.

- retract (raining).

yes

?- nice.

yes

. Prolog , , assert/retract, . dynamic(Predicatelndicator). , assert, consult, .

, retract : retract . , , "", :

fast (aims.

slow! torn).

pat).

:

?- assert! (faster[X,¥>:-

fastcxb slow(Y))).

yes

?- faster! a, B).

A - ann

E = torn

?- retract (sio>;(x)).

X = torn;

X - pat;

no

?- faster! ann, _).

no

, ( assert) .

162 I. Prolog


 


, . asserta assertz . asserta() ,

assertz()

. , assert assertz, Prolog. , :

?- assert p(b>), aseertzl (), assert: p(d)), asserta (p [an.

yes

?- P{X) X - a; X = b; X = c,-

X = d

consult assertz . consult asser z : () .

asserta . , , : solve.' Problem, solution)

,
, , :
?- solve) prob[ Solution),

eiS SCI l a solve f problem!. Solution)).

, (Solution) . "" , , , , . , , , , . .

. , 9 : X V, Z is , . , .. maketable.

maketable:-

L = [0,1,2, 3,4, 5, 6,7, , 9],

member(X, L), *

member(Y, L), ■ Z isX'Y, assert! product(X,Y, Z) >,

fail.

7. 163


, ?- maketable.

, . , , 8:

?- product! , , 8). = 1 = 8; = 2 = 4;

. , , assert retract. . . . , - , . . . , , , .

7.6.
product.

) Prolog product .

6} , , .

7.7.

copy_tem{ Tern, Copy)

Terra, . " asserta retract. Prolog , copy_term.





:


: 2015-10-01; !; : 509 |


:

:

- - , .
==> ...

1475 - | 1471 -


© 2015-2024 lektsii.org - -

: 0.013 .