Fiona is cold. Fiona is furry. Fiona is red. Gary is cold. Gary is furry. Gary is nice. Gary is red. Gary is round. Gary is smart. Harry is big. Harry is cold. Harry is furry. Harry is nice. Harry is red. Harry is round. Harry is smart. If Fiona is furry then Fiona is smart. All round, red things are furry. Big things are red. All red things are cold. All big, furry things are round. All nice things are round. If Harry is round and Harry is red then Harry is cold. Cold things are big.
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is red.
("Harry" "is" "red" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is smart.
("Harry" "is" "smart" "+")
If Fiona is furry then Fiona is smart.
((("Fiona" "is" "furry" "+")) -> ("Fiona" "is" "smart" "+"))
All round, red things are furry.
((("something" "is" "round" "+") ("something" "is" "red" "+")) -> ("something" "is" "furry" "+"))
Big things are red.
((("something" "is" "big" "+")) -> ("something" "is" "red" "+"))
All red things are cold.
((("something" "is" "red" "+")) -> ("something" "is" "cold" "+"))
All big, furry things are round.
((("something" "is" "big" "+") ("something" "is" "furry" "+")) -> ("something" "is" "round" "+"))
All nice things are round.
((("something" "is" "nice" "+")) -> ("something" "is" "round" "+"))
If Harry is round and Harry is red then Harry is cold.
((("Harry" "is" "round" "+") ("Harry" "is" "red" "+")) -> ("Harry" "is" "cold" "+"))
Cold things are big.
((("something" "is" "cold" "+")) -> ("something" "is" "big" "+"))
Gary is red.
True
1
proof
[(triple7 OR ((((triple4) -> rule8)) -> rule3))]
("Gary" "is" "red" "+")
triple7
((((triple4) -> (rule8 % int2))) -> (rule3 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is not red.
False
1
inv-proof
[(triple7 OR ((((triple4) -> rule8)) -> rule3))]
("Gary" "is" "red" "-")
triple7
((((triple4) -> (rule8 % int2))) -> (rule3 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is big.
True
2
proof
[(((triple4) -> rule8) OR ((((triple7) -> rule4)) -> rule8))]
("Gary" "is" "big" "+")
((triple4) -> (rule8 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
((((triple7) -> (rule4 % int2))) -> (rule8 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Fiona is not smart.
False
2
inv-proof
[(((triple2) -> rule1))]
("Fiona" "is" "smart" "-")
((triple2) -> (rule1 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is round.
True
4
proof
[(((((triple1) -> rule8) triple2) -> rule5) OR ((((((triple3) -> rule4)) -> rule8) triple2) -> rule5))]
("Fiona" "is" "round" "+")
((((triple1) -> (rule8 % int2)) triple2) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
((((((triple3) -> (rule4 % int3))) -> (rule8 % int2)) triple2) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is not round.
False
4
inv-proof
[(((((triple1) -> rule8) triple2) -> rule5) OR ((((((triple3) -> rule4)) -> rule8) triple2) -> rule5))]
("Fiona" "is" "round" "-")
((((triple1) -> (rule8 % int2)) triple2) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
((((((triple3) -> (rule4 % int3))) -> (rule8 % int2)) triple2) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
@0: Fiona is cold.[(triple1 OR ((triple3) -> rule4))] Fiona is furry.[(triple2)] Fiona is red.[(triple3 OR ((((triple1) -> rule8)) -> rule3))] Gary is cold.[(triple4 OR ((triple7) -> rule4))] Gary is furry.[(triple5 OR ((triple8 triple7) -> rule2) OR ((((triple6) -> rule6) triple7) -> rule2) OR ((triple8 ((((triple4) -> rule8)) -> rule3)) -> rule2) OR ((((triple6) -> rule6) ((((triple4) -> rule8)) -> rule3)) -> rule2))] Gary is nice.[(triple6)] Gary is red.[(triple7 OR ((((triple4) -> rule8)) -> rule3))] Gary is round.[(triple8 OR ((triple6) -> rule6) OR ((((triple4) -> rule8) triple5) -> rule5) OR ((((((triple7) -> rule4)) -> rule8) triple5) -> rule5))] Gary is smart.[(triple9)] Harry is big.[(triple10 OR ((triple11) -> rule8) OR ((((triple14) -> rule4)) -> rule8) OR ((((triple15 triple14) -> rule7)) -> rule8) OR ((((((triple13) -> rule6) triple14) -> rule7)) -> rule8))] Harry is cold.[(triple11 OR ((triple14) -> rule4) OR ((triple15 triple14) -> rule7) OR ((((triple10) -> rule3)) -> rule4) OR ((triple15 ((triple10) -> rule3)) -> rule7) OR ((((triple13) -> rule6) triple14) -> rule7) OR ((((triple10 triple12) -> rule5) triple14) -> rule7) OR ((((triple13) -> rule6) ((triple10) -> rule3)) -> rule7) OR ((((triple10 triple12) -> rule5) ((triple10) -> rule3)) -> rule7))] Harry is furry.[(triple12 OR ((triple15 triple14) -> rule2) OR ((triple15 ((triple10) -> rule3)) -> rule2) OR ((((triple13) -> rule6) triple14) -> rule2) OR ((((triple13) -> rule6) ((triple10) -> rule3)) -> rule2) OR ((triple15 ((((triple11) -> rule8)) -> rule3)) -> rule2) OR ((((triple13) -> rule6) ((((triple11) -> rule8)) -> rule3)) -> rule2))] Harry is nice.[(triple13)] Harry is red.[(triple14 OR ((triple10) -> rule3) OR ((((triple11) -> rule8)) -> rule3))] Harry is round.[(triple15 OR ((triple13) -> rule6) OR ((triple10 triple12) -> rule5) OR ((((triple11) -> rule8) triple12) -> rule5) OR ((((((triple14) -> rule4)) -> rule8) triple12) -> rule5))] Harry is smart.[(triple16)] @1: Fiona is big.[(((triple1) -> rule8) OR ((((triple3) -> rule4)) -> rule8))] Fiona is smart.[(((triple2) -> rule1))] Gary is big.[(((triple4) -> rule8) OR ((((triple7) -> rule4)) -> rule8))] @2: Fiona is round.[(((((triple1) -> rule8) triple2) -> rule5) OR ((((((triple3) -> rule4)) -> rule8) triple2) -> rule5))]
Fiona is cold.
("Fiona" "is" "cold" "+")
triple1
((triple3) -> (rule4 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
triple2
Fiona is red.
("Fiona" "is" "red" "+")
triple3
((((triple1) -> (rule8 % int2))) -> (rule3 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
triple4
((triple7) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
triple5
((triple8 triple7) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
((((triple6) -> (rule6 % int2)) triple7) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
((triple8 ((((triple4) -> (rule8 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
((((triple6) -> (rule6 % int4)) ((((triple4) -> (rule8 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
int4
Gary is nice.
("Gary" "is" "nice" "+")
triple6
Gary is red.
("Gary" "is" "red" "+")
triple7
((((triple4) -> (rule8 % int2))) -> (rule3 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
triple8
((triple6) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
((((triple4) -> (rule8 % int2)) triple5) -> (rule5 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
((((((triple7) -> (rule4 % int3))) -> (rule8 % int2)) triple5) -> (rule5 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Gary is smart.
("Gary" "is" "smart" "+")
triple9
Harry is big.
("Harry" "is" "big" "+")
triple10
((triple11) -> (rule8 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
((((triple14) -> (rule4 % int2))) -> (rule8 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
((((triple15 triple14) -> (rule7 % int2))) -> (rule8 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
((((((triple13) -> (rule6 % int3)) triple14) -> (rule7 % int2))) -> (rule8 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
Harry is cold.
("Harry" "is" "cold" "+")
triple11
((triple14) -> (rule4 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
((triple15 triple14) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
((((triple10) -> (rule3 % int2))) -> (rule4 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
((triple15 ((triple10) -> (rule3 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
((((triple13) -> (rule6 % int2)) triple14) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
((((triple10 triple12) -> (rule5 % int2)) triple14) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
((((triple13) -> (rule6 % int3)) ((triple10) -> (rule3 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
((((triple10 triple12) -> (rule5 % int3)) ((triple10) -> (rule3 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
Harry is furry.
("Harry" "is" "furry" "+")
triple12
((triple15 triple14) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
((triple15 ((triple10) -> (rule3 % int2))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
((((triple13) -> (rule6 % int2)) triple14) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
((((triple13) -> (rule6 % int3)) ((triple10) -> (rule3 % int2))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
((triple15 ((((triple11) -> (rule8 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is big.
("Harry" "is" "big" "+")
int3
((((triple13) -> (rule6 % int4)) ((((triple11) -> (rule8 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is big.
("Harry" "is" "big" "+")
int3
Harry is round.
("Harry" "is" "round" "+")
int4
Harry is nice.
("Harry" "is" "nice" "+")
triple13
Harry is red.
("Harry" "is" "red" "+")
triple14
((triple10) -> (rule3 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
((((triple11) -> (rule8 % int2))) -> (rule3 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
triple15
((triple13) -> (rule6 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
((triple10 triple12) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
((((triple11) -> (rule8 % int2)) triple12) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
((((((triple14) -> (rule4 % int3))) -> (rule8 % int2)) triple12) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is cold.
("Harry" "is" "cold" "+")
int3
Harry is smart.
("Harry" "is" "smart" "+")
triple16
Fiona is big.
("Fiona" "is" "big" "+")
((triple1) -> (rule8 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
((((triple3) -> (rule4 % int2))) -> (rule8 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
((triple2) -> (rule1 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
((triple4) -> (rule8 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
((((triple7) -> (rule4 % int2))) -> (rule8 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
((((triple1) -> (rule8 % int2)) triple2) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
((((((triple3) -> (rule4 % int3))) -> (rule8 % int2)) triple2) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3