;;;; -*- mode:Scheme; -*- ;;;;

(define (make-zoo-rules)
  (clear-rules)
  (clear-assertions)
  (remember-rules
   '(Z1 IF
	((? animal) has hair)
	THEN ((? animal) family is mammal))
   '(Z2 IF
	((? animal) gives milk)
	THEN ((? animal) family is mammal))
   '(Z3 IF
	((? animal) has feathers)
	THEN ((? animal) family is bird))
   '(Z4 IF
	((? animal) flies)
	((? animal) lays eggs)
	THEN ((? animal) family is bird))
   '(Z5 IF
	((? animal) family is  mammal)
	((? animal) eats meat)
	THEN ((? animal) diet is carnivore))
   '(Z6 IF
	((? animal) family is mammal)
	((? animal) has pointed teeth)
	((? animal) has claws)
	((? animal) has forward-pointing eyes)
	THEN ((? animal) diet is carnivore))
   '(Z7 IF
	((? animal) family is mammal)
	((? animal) has hoofs)
	THEN ((? animal) class is ungulate))
   '(Z8 IF
	((? animal) family is mammal)
	((? animal) chews cud)
	THEN ((? animal) class is ungulate))
   '(Z9 IF
	((? animal) diet is carnivore)
	((? animal) has tawny color)
	((? animal) has dark spots)
	THEN ((? animal) species is cheetah))
   '(Z10 IF
	 ((? animal) diet is carnivore)
	 ((? animal) has tawny color)
	 ((? animal) has black stripes)
	 THEN ((? animal) species is tiger))
   '(Z11 IF
	 ((? animal) class is ungulate)
	 ((? animal) has long neck)
	 ((? animal) has long legs)
	 ((? animal) has dark spots)
	 THEN ((? animal) species is giraffe))
   '(Z12 IF
	 ((? animal) class is ungulate)
	 ((? animal) has black stripes)
	 THEN ((? animal) species is zebra))
   '(Z13 IF
	 ((? animal) family is bird)
	 ((? animal) has long legs)
	 ((? animal) has long neck)
	 ((? animal) is black and white)
	 THEN ((? animal) species is ostrich))
   '(Z14 IF
	 ((? animal) family is bird)
	 ((? animal) swims)
	 ((? animal) is black and white)
	 THEN ((? animal) species is penguin))
   '(Z15 IF
	 ((? animal) family is bird)
	 ((? animal) flies well)
	 THEN ((? animal) species is albatross)))

  (format #t "~%Zookeeper rules recorded."))


