.


:




:

































 

 

 

 


-.

.

1. (- )

2. CONSTANTS- . -, - - , - . < >=<->

3. DOMAINS- - . - - - -. .

4. DATABASE- - ?

5. PREDICATES- . - . - -- - - .

6. CLAUSES- . - -. - - -, - ,- - . -,- - - , -.

-, - - . - - .

7. GOAL- - . -, -, - - , .

 

, - .

- , - --. - . - , -. - , , . -.

. :

(,).

?-(,)

=.

 

.

DOMAINS- - . - - - -. .:

domains

i=integer

, *

 

PREDICATES- . - . - -- - - .:

predicates

mother(string, string).

, -

 

.

[a,b,c]- - char. []- -. , - - - *

domains

i=integer

predicates

s(i,i) i- .

. , - : [head/tail]

[1,2,3]=[1[2,3]]=[1/2/[3]]

, - - - - , (- ,, -), , - - .: , - (- ). - - :1) - --0. 2)- - , - - - - - , - 1

length([]-,0)

length(l_/T],l):-length(T,l_T),

l=l_T+1/

goal

length(1[1,2,3],x).

length([x]) x=0

1)T:=[2,3]

2)T:=[3]

3)T:=[]

 

. -

- - - . : +,-,*, <>,>,<,=

:

domains: i=integer, r=real.

predicates: add(i,i,i) sub(i,i,i) mul(i,i,i) div(i,i,i) fadd(r,r,r) fsub(r,r,r) fmul(r,r,r) fdiv(r,r,r)

clauses: add(x,y,z):-z=x+y. mul(x,y,z):-z=x*y. fadd(x,y,z):-z=x+y. .

goal

add(3,2,z)

 

-.

- - , - -. - _. : , - .

:

clauses: max(x,y,x):-x>y max(x,y,y):-x<=y

goal:max(3,2,z) max(5,6,z)

- , , , . . !

- . , , - , , - ,, . ,- , - ,- -, - .

:

clauses: max(x,y,x):-x>y,!. max(_,y,y):-x<=y.

goal:max(3,2,z) max(5,6,z)

- -, - ,- .

, - - - .

: -

 

 



<== | ==>
. |
:


: 2017-02-25; !; : 328 |


:

:

.
==> ...

1716 - | 1500 -


© 2015-2024 lektsii.org - -

: 0.01 .