· 5 years ago · May 22, 2020, 11:52 AM
1domains
2 address = address(symbol City, symbol Street, integer House_num, integer Flat_num).
3
4 property = auto_own(symbol Brand, symbol Color, integer Cost); building_own(symbol Type, integer Floors, integer Cost);land_own(symbol Type, integer Plottage, integer Cost); water_transport_own(symbol Type, integer Cost).
5
6predicates
7 phone_book(symbol Surname, symbol Phone_num, address)
8 auto(symbol Surname, symbol Brand, symbol Color, integer Cost)
9 deposit(symbol Surname, symbol Bank, integer Bill, integer Sum)
10
11 owner(symbol Surname, property Property)
12
13 rule_1_2(symbol Surname, symbol Own_name, integer Cost)
14clauses
15 phone_book(ivanov, "32-17-77", address(moscow, ilmenskiy, 14, 1018)).
16
17 phone_book(petrov, "37-87-70", address(pyatigosk, lenina, 73, 527)).
18 phone_book(sidorov, "98-36-83", address(moscow, tverskaya, 103, 17)).
19 phone_book(vasilev, "59-60-55", address(samara, lesnaya, 10, 7)).
20
21 auto(ivanov, bmw, white, 7800000).
22
23 auto(petrov, volvo, red, 1300000).
24 auto(sidorov, audi, green ,1600000).
25
26 deposit(ivanov, vtb, 00232973, 300000).
27 deposit(petrov, sberbank, 00101023, 36000).
28 deposit(sidorov, alfabank, 00014584, 200000).
29
30 owner(Surname, auto_own(Brand, Color, Cost)):- auto(Surname, Brand, Color, Cost).
31 owner(ivanov, building_own(supermarket, 1, 20000000)).
32 owner(petrov, building_own(townhouse, 3, 15000000)).
33
34 owner(petrov, land_own(field, 40, 4000000)).
35 owner(petrov, water_transport_own(hydrocycle, 200000)).
36 owner(vasiliev, water_transport_own(boat, 100000)).
37
38 rule_1_2(Surname, Brand, Cost):-owner(Surname, auto_own(Brand, _, Cost)).
39
40 rule_1_2(Surname, Type, Cost):-owner(Surname, building_own(Type, _, Cost)).
41 rule_1_2(Surname, Type, Cost):-owner(Surname, land_own(Type, _, Cost)).
42 rule_1_2(Surname, Type, Cost):-owner(Surname, water_transport_own(Type, Cost)).
43goal
44 %rule_1_2(ivanov, Own_name, _).
45
46 %rule_1_2(petrov, Own_name, Cost).