Bob is red. Bob is smart. Bob is young. If someone is young then they are furry. If someone is furry and kind then they are red. Smart people are cold.
Bob is red.
("Bob" "is" "red" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Bob is young.
("Bob" "is" "young" "+")
If someone is young then they are furry.
((("someone" "is" "young" "+")) -> ("someone" "is" "furry" "+"))
If someone is furry and kind then they are red.
((("someone" "is" "furry" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "red" "+"))
Smart people are cold.
((("someone" "is" "smart" "+")) -> ("someone" "is" "cold" "+"))
Bob is smart.
True
1
proof
[(triple2)]
("Bob" "is" "smart" "+")
triple2
Bob is not young.
False
1
inv-proof
[(triple3)]
("Bob" "is" "young" "-")
triple3
Bob is furry.
True
2
proof
[(((triple3) -> rule1))]
("Bob" "is" "furry" "+")
((triple3) -> (rule1 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is not cold.
False
2
inv-proof
[(((triple2) -> rule3))]
("Bob" "is" "cold" "-")
((triple2) -> (rule3 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is not white.
Unknown
inv-random
[@0: Bob is white.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "white" "-")
Bob is kind.
Unknown
random
[@0: Bob is kind.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "kind" "+")
@0: Bob is red.[(triple1)] Bob is smart.[(triple2)] Bob is young.[(triple3)] @1: Bob is cold.[(((triple2) -> rule3))] Bob is furry.[(((triple3) -> rule1))]
Bob is red.
("Bob" "is" "red" "+")
triple1
Bob is smart.
("Bob" "is" "smart" "+")
triple2
Bob is young.
("Bob" "is" "young" "+")
triple3
Bob is cold.
("Bob" "is" "cold" "+")
((triple2) -> (rule3 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is furry.
("Bob" "is" "furry" "+")
((triple3) -> (rule1 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1