You are on page 1of 7

MINISTERUL EDUCAŢIEI al REPUBLICII MOLDOVA

UNIVERSITATEA TEHNICĂ a MOLDOVEI


FACULTATEA CALCULATOARE, INFORMATICǍ
şi MICROELECTRONICǍ
DEPARTAMENTUL INGINERIE, SOFTWARE și AUTOMATICĂ

RAPORT
Lucrarea de laborator Nr.1
la Programarea logică și inteligența artificială
Tema: Introducere în limbajul Prolog

Realizat de: Toloacă Alexandru.,gr-TI-152


Verificat de:conf. univ.,dr. Luchianova Liudmila

Chișinău 2018
Arborele genealogic al familiei:

Baza de cunoștințe elaborată:


1. femeie(efimia).
2. barbat(feodosie).
3. femeie(parascovia).
4. barbat(filip).
5. femeie(efimiaTata).
6. barbat(vasileTata).
7. femeie(zevastia).
8. barbat(pavel).
9. femeie(parascheva).
10. barbat(onisim).
11. femeie(ana).
12. barbat(trifan).
13. femeie(valentina).
14. barbat(vladimir).
15. femeie(eudochia).
16. barbat(feodor).
17. femeie(ninaTata).
18. barbat(ion).
19. femeie(liudmila).
20. barbat(veceslav).
21. femeie(cristina).
22. barbat(alexandru).
23. femeie(alina).
24. barbat(sergiu).
25. femeie(diana).
26. barbat(viorel).
27. femeie(anisoara).
28. barbat(slavic).
29. femeie(vica).
30. barbat(marin).
31. femeie(anastasia).
32. barbat(igor).
33. femeie(amelia).
34. barbat(gheorghe).
35. femeie(alexandra).
36. barbat(anghel).
37. femeie(polina).
38. barbat(ionFoca).
39. femeie(eugenia).
40. barbat(nicolae).
41. femeie(olesia).
42. barbat(anatolie).
43. femeie(ninuta).
44. barbat(vasile).
45. femeie(elena).
46. barbat(pasha).
47. femeie(irinaIonita).
48. barbat(sasha).
49. femeie(silvia).
50. barbat(giorgio).
51. femeie(irina).
52. barbat(ilie).
53. femeie(inga).
54. barbat(vanea).
55. femeie(dianaEremia).
56. barbat(colea).
57. femeie(valentinaEremia).
58. barbat(gheorgheBeshleaga).
59. femeie(valeria).
60. barbat(nicu).
61. femeie(dana).
62. barbat(sorin).
63. femeie(augustina).
64. barbat(pashaIonita).
65. femeie(adelina).
66. barbat(denis).
67. barbat(calin).
68. barbat(cristi).
69. barbat(nicuBeshleaga).
70. copil(pavel,feodosie).
71. copil(pavel,parascovia).
72. copil(parascheva,efim).
73. copil(parascheva,efimia).
74. copil(onisim,filip).
75. copil(onisim,efimiaTata).
76. copil(ana,vasileTata).
77. copil(ana,zevastia).
78. copil(trifan,onisim).
79. copil(trifan,ana).
80. copil(eudochia,onisim).
81. copil(eudochia,ana).
82. copil(nina, onisim).
83. copil(nina, ana).
84. copil(ion,trifan).
85. copil(ion, valentina).
86. copil(cristina,trifan).
87. copil(cristina,valentina).
88. copil(alexandru, trifan).
89. copil(alexandru,valentina).
90. copil(sergiu,vladimir).
91. copil(sergiu, eudochia).
92. copil(diana,vladimir).
93. copil(diana, eudochia).
94. copil(marin, feodor).
95. copil(marin, ninaTata).
96. copil(igor, feodor).
97. copil(igor, ninaTata).
98. copil(anisoara, feodor).
99. copil(anisoara, ninaTata).
100. copil(vica, ion).
101. copil(vica, liudmila).
102. copil(anastasia, ion).
103. copil(anastasia, liudmila).
104. copil(gheorghe, veceslav).
105. copil(gheorghe, cristina).
106. copil(alexandra, viorel).
107. copil(alexandra, diana).
108. copil(amelia, sergiu).
109. copil(amelia, alina).
110. copil(polina, marin).
111. copil(polina, victoria).
112. copil(anghel,slavic).
113. copil(anghel, anisoara).
114. copil(ionFoca, pavel).
115. copil(ionFoca, parascheva).
116. copil(valentina, pavel).
117. copil(valentina, parascheva).
118. copil(nicolae, pavel).
119. copil(nicolae, parascheva).
120. copil(natalia, pavel).
121. copil(natalia, parascheva).
122. copil(efimiaIonita, pavel).
123. copil(efimiaIonita, parascheva).
124. copil(pasha, ionFoca).
125. copil(pasha, galina).
126. copil(sasha, ionFoca).
127. copil(sasha, galina).
128. copil(giorgio, nicolae).
129. copil(giorgio, nina).
130. copil(ilie, nicolae).
131. copil(ilie, nina).
132. copil(vanea, nicolae).
133. copil(vanea, nina).
134. copil(silvia, nicolae).
135. copil(silvia, nina).
136. copil(nicu, nicolae).
137. copil(nicu, nina).
138. copil(sorin, nicolae).
139. copil(sorin, nina).
140. copil(inga, anatolie).
141. copil(inga, natalia).
142. copil(dianaEremia, anatolie).
143. copil(dianaEremia, natalia).
144. copil(valentinaEremia, anatolie).
145. copil(valentinaEremia, natalia).
146. copil(colea, vasile).
147. copil(colea, efimiaIonita).
148. copil(irinaIonita, vasile).
149. copil(irinaIonita, efimiaIonita).
150. copil(pashaIonita, vasile).
151. copil(pashaIonita, efimiaIonita).
152. copil(valeria, pasha).
153. copil(valeria, eugenia).
154. copil(calin, giorgio).
155. copil(calin, ninuta).
156. copil(cristi, ilie).
157. copil(cristi, elena).
158. copil(nicuBeshleaga, gheorgheBeshleaga).
159. copil(nicuBeshleaga, silvia).
160. copil(dana, denis).
161. copil(dana, inga).
162. cuplu(efim, efimia).
163. cuplu(feodosie, parascovia).
164. cuplu(filip, efimiaTata).
165. cuplu(vasileTata, zevastia).
166. cuplu(onisim, ana).
167. cuplu(pavel, parascheva).
168. cuplu(trifan, valentina).
169. cuplu(vladimir, eudochia).
170. cuplu(feodor, ninaTata).
171. cuplu(ionFoca, galina).
172. cuplu(nicolae, nina).
173. cuplu(anatolie, natalia).
174. cuplu(vasile, efimiaIonita).
175. cuplu(ion,liudmila).
176. cuplu(veceslav, cristina).
177. cuplu(viorel, diana).
178. cuplu(sergiu, alina).
179. cuplu(marin, victoria).
180. cuplu(slavic, anisoara).
181. cuplu(pasha, eugenia).
182. cuplu(sasha, olesia).
183. cuplu(giorgio, ninuta).
184. cuplu(ilie, elena).
185. cuplu(gheorgheBeshleaga, silvia).
186. cuplu(denis, inga).
187.
188. sotie(F,B):-cuplu(B,F),femeie(F).
189. mama(M,C):-copil(C,M),femeie(M).
190. tata(T,C):-copil(C,T),barbat(T).
191. sora(S,F):-mama(M,S),mama(M,F),femeie(S),S\=F.
192. bunica(B,N):-copil(P,B),copil(N,P),femeie(B).
193. matusa(M,N):-sora(M,P),copil(N,P),femeie(M).
194. frati(C1,C2):-copil(C1,P),copil(C2,P),C1\=C2.
Interogări asupra bazei de cunoștințe:
?- mama(valentina,Copil).
Copil = ion ;
Copil = cristina ;
Copil = alexandru.
?- sora(cristina,X).
X = ion ;
X = alexandru.
?- bunica(parascheva,Nepot).
Nepot = pasha ;
Nepot = sasha ;
Nepot = ion ;
Nepot = cristina ;
Nepot = alexandru ;
Nepot = giorgio ;
Nepot = ilie ;
Nepot = vanea ;
Nepot = silvia ;
Nepot = nicu ;
Nepot = sorin ;
Nepot = inga ;
Nepot = dianaEremia ;
Nepot = valentinaEremia ;
Nepot = colea ;
Nepot = irinaIonita ;
Nepot = pashaIonita.
?- cuplu(Barbat,Femeie).
Barbat = efim,
Femeie = efimia ;
Barbat = feodosie,
Femeie = parascovia ;
Barbat = filip,
Femeie = efimiaTata ;
Barbat = vasileTata,
Femeie = zevastia ;
Barbat = onisim,
Femeie = ana ;
Barbat = pavel,
Femeie = parascheva ;
Barbat = trifan,
Femeie = valentina ;
Barbat = vladimir,
Femeie = eudochia ;
Barbat = feodor,
Femeie = ninaTata ;
Barbat = ionFoca,
Femeie = galina ;
Barbat = nicolae,
Femeie = nina ;
Barbat = anatolie,
Femeie = natalia ;
Barbat = vasile,
Femeie = efimiaIonita ;
Barbat = ion,
Femeie = liudmila ;
Barbat = veceslav,
Femeie = cristina ;
Barbat = viorel,
Femeie = diana ;
Barbat = sergiu,
Femeie = alina ;
Barbat = marin,
Femeie = victoria ;
Barbat = slavic,
Femeie = anisoara ;
Barbat = pasha,
Femeie = eugenia ;
Barbat = sasha,
Femeie = olesia ;
Barbat = giorgio,
Femeie = ninuta ;
Barbat = ilie,
Femeie = elena ;
Barbat = gheorgheBeshleaga,
Femeie = silvia ;
Barbat = denis,
Femeie = inga
?- frati(alexandru,M).
M = ion ;
M = cristina ;

Concluzie:
În urma efectuării acestei lucrări de laborator, am însușit principiile fundamentale de
programare în limbajul Prolog. Am creat arborele genealogic al familiei mele și apoi am introdus
informațiile din acesta într-o bază de cunoștințe. Am elaborat câteva reguli ce determină diverse
grade de rudenie și am interogat baza de cunoștințe. După ce am aplicat un set de interogări asupra
bazei de cunoștințe, m-am convins că regulile funcționează corect.

You might also like