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