Bob is white. Bob is young. Charlie is smart. Charlie is white. Erin is cold. Harry is cold. Harry is white. If something is cold and kind then it is white. Young things are round. If Erin is cold then Erin is white. If Erin is cold and Erin is white then Erin is smart. If something is kind then it is cold. If something is round and young then it is white. If something is smart then it is furry. All cold things are smart.
Bob is white.
("Bob" "is" "white" "+")
Bob is young.
("Bob" "is" "young" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is white.
("Harry" "is" "white" "+")
If something is cold and kind then it is white.
((("something" "is" "cold" "+") ("something" "is" "kind" "+")) -> ("something" "is" "white" "+"))
Young things are round.
((("something" "is" "young" "+")) -> ("something" "is" "round" "+"))
If Erin is cold then Erin is white.
((("Erin" "is" "cold" "+")) -> ("Erin" "is" "white" "+"))
If Erin is cold and Erin is white then Erin is smart.
((("Erin" "is" "cold" "+") ("Erin" "is" "white" "+")) -> ("Erin" "is" "smart" "+"))
If something is kind then it is cold.
((("something" "is" "kind" "+")) -> ("something" "is" "cold" "+"))
If something is round and young then it is white.
((("something" "is" "round" "+") ("something" "is" "young" "+")) -> ("something" "is" "white" "+"))
If something is smart then it is furry.
((("something" "is" "smart" "+")) -> ("something" "is" "furry" "+"))
All cold things are smart.
((("something" "is" "cold" "+")) -> ("something" "is" "smart" "+"))
Charlie is smart.
True
1
proof
[(triple3)]
("Charlie" "is" "smart" "+")
triple3
Harry is not white.
False
1
inv-proof
[(triple7)]
("Harry" "is" "white" "-")
triple7
Charlie is furry.
True
2
proof
[(((triple3) -> rule7))]
("Charlie" "is" "furry" "+")
((triple3) -> (rule7 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Bob is not round.
False
2
inv-proof
[(((triple2) -> rule2))]
("Bob" "is" "round" "-")
((triple2) -> (rule2 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Harry is furry.
True
3
proof
[(((((triple6) -> rule8)) -> rule7))]
("Harry" "is" "furry" "+")
((((triple6) -> (rule8 % int2))) -> (rule7 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Harry is not furry.
False
3
inv-proof
[(((((triple6) -> rule8)) -> rule7))]
("Harry" "is" "furry" "-")
((((triple6) -> (rule8 % int2))) -> (rule7 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Bob is not furry.
Unknown
inv-rconc
[@3: Bob is furry.[CWA. Example of deepest failure = (rule7 <- rule8 <- rule5 <- FAIL)]]
("Bob" "is" "furry" "-")
Erin is round.
Unknown
rconc
[@1: Erin is round.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Erin" "is" "round" "+")
Bob is not smart.
Unknown
inv-rconc
[@2: Bob is smart.[CWA. Example of deepest failure = (rule8 <- rule5 <- FAIL)]]
("Bob" "is" "smart" "-")
Charlie is young.
Unknown
random
[@0: Charlie is young.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "young" "+")
Charlie is not kind.
Unknown
inv-random
[@0: Charlie is kind.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "kind" "-")
Harry is young.
Unknown
random
[@0: Harry is young.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "young" "+")
@0: Bob is white.[(triple1 OR ((((triple2) -> rule2) triple2) -> rule6))] Bob is young.[(triple2)] Charlie is smart.[(triple3)] Charlie is white.[(triple4)] Erin is cold.[(triple5)] Harry is cold.[(triple6)] Harry is white.[(triple7)] @1: Bob is round.[(((triple2) -> rule2))] Charlie is furry.[(((triple3) -> rule7))] Erin is smart.[(((triple5) -> rule8) OR ((triple5 ((triple5) -> rule3)) -> rule4))] Erin is white.[(((triple5) -> rule3))] Harry is smart.[(((triple6) -> rule8))] @2: Erin is furry.[(((((triple5) -> rule8)) -> rule7) OR ((((triple5 ((triple5) -> rule3)) -> rule4)) -> rule7))] Harry is furry.[(((((triple6) -> rule8)) -> rule7))]
Bob is white.
("Bob" "is" "white" "+")
triple1
((((triple2) -> (rule2 % int2)) triple2) -> (rule6 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Bob is young.
("Bob" "is" "young" "+")
triple2
Charlie is smart.
("Charlie" "is" "smart" "+")
triple3
Charlie is white.
("Charlie" "is" "white" "+")
triple4
Erin is cold.
("Erin" "is" "cold" "+")
triple5
Harry is cold.
("Harry" "is" "cold" "+")
triple6
Harry is white.
("Harry" "is" "white" "+")
triple7
Bob is round.
("Bob" "is" "round" "+")
((triple2) -> (rule2 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
((triple3) -> (rule7 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
((triple5) -> (rule8 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
((triple5 ((triple5) -> (rule3 % int2))) -> (rule4 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
Erin is white.
("Erin" "is" "white" "+")
((triple5) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
((triple6) -> (rule8 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
((((triple5) -> (rule8 % int2))) -> (rule7 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
((((triple5 ((triple5) -> (rule3 % int3))) -> (rule4 % int2))) -> (rule7 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
Erin is white.
("Erin" "is" "white" "+")
int3
Harry is furry.
("Harry" "is" "furry" "+")
((((triple6) -> (rule8 % int2))) -> (rule7 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2