%% predicates % has_covering(Animal,Value) -- meaning obvious % milk(Animal,Value) -- has milk or not % homeothermic(Animal,Value) -- t is true, f is false % habitat(Animal,Value) -- where does it live? % eggs(Animal,Value) -- does it lay eggs? t is true, f is false % gills(Animal,Value) -- does it have gills? % class(Animal,Value) -- only five, mammal, fish, reptile, bird and amphibian has_covering(a1, hair). has_covering(a2, none). has_covering(a3, hair). has_covering(a4, hair). has_covering(a5, scales). has_covering(a6, scales). has_covering(a7, scales). has_covering(a8, feathers). has_covering(a9, feathers). has_covering(a10, none). milk(a1, t). milk(a2, t). milk(a3, t). milk(a4, t). milk(a5, f). milk(a6, f). milk(a7, f). milk(a8, f). milk(a9, f). milk(a10, f). homeothermic(a1, t). homeothermic(a2, t). homeothermic(a3, t). homeothermic(a4, t). homeothermic(a5, f). homeothermic(a6, f). homeothermic(a7, f). homeothermic(a8, t). homeothermic(a9, t). homeothermic(a10, f). habitat(a1, land). habitat(a2, sea). habitat(a3, sea). habitat(a4, air). habitat(a5, sea). habitat(a6, land). habitat(a7, sea). habitat(a8, air). habitat(a9, land). habitat(a10, land). eggs(a1, f). eggs(a2, f). eggs(a3, t). eggs(a4, f). eggs(a5, t). eggs(a6, t). eggs(a7, t). eggs(a8, t). eggs(a9, t). eggs(a10, t). gills(a1, f). gills(a2, f). gills(a3, f). gills(a4, f). gills(a5, t). gills(a6, f). gills(a7, f). gills(a8, f). gills(a9, f). gills(a10, f). class(a1, mammal). class(a2, mammal). class(a3, mammal). class(a4, mammal). class(a5, fish). class(a6, reptile). class(a7, reptile). class(a8, bird). class(a9, bird). class(a10, amphibian).