Anne is kind. Bob is quiet. Charlie is blue. Harry is quiet. Quiet things are blue. If something is blue then it is nice. Cold things are round. If something is round then it is blue. If Harry is blue then Harry is quiet. If Bob is blue and Bob is kind then Bob is round.
Anne is kind.
("Anne" "is" "kind" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
Quiet things are blue.
((("something" "is" "quiet" "+")) -> ("something" "is" "blue" "+"))
If something is blue then it is nice.
((("something" "is" "blue" "+")) -> ("something" "is" "nice" "+"))
Cold things are round.
((("something" "is" "cold" "+")) -> ("something" "is" "round" "+"))
If something is round then it is blue.
((("something" "is" "round" "+")) -> ("something" "is" "blue" "+"))
If Harry is blue then Harry is quiet.
((("Harry" "is" "blue" "+")) -> ("Harry" "is" "quiet" "+"))
If Bob is blue and Bob is kind then Bob is round.
((("Bob" "is" "blue" "+") ("Bob" "is" "kind" "+")) -> ("Bob" "is" "round" "+"))
Bob is quiet.
True
1
proof
[(triple2)]
("Bob" "is" "quiet" "+")
triple2
Anne is not kind.
False
1
inv-proof
[(triple1)]
("Anne" "is" "kind" "-")
triple1
Charlie is nice.
True
2
proof
[(((triple3) -> rule2))]
("Charlie" "is" "nice" "+")
((triple3) -> (rule2 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Bob is not blue.
False
2
inv-proof
[(((triple2) -> rule1))]
("Bob" "is" "blue" "-")
((triple2) -> (rule1 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Charlie is not round.
Unknown
inv-rconc
[@1: Charlie is round.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Charlie" "is" "round" "-")
Anne is nice.
Unknown
rconc
[@3: Anne is nice.[CWA. Example of deepest failure = (rule2 <- rule4 <- rule3 <- FAIL)]]
("Anne" "is" "nice" "+")
Bob is not cold.
Unknown
inv-random
[@0: Bob is cold.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "cold" "-")
Anne is quiet.
Unknown
random
[@0: Anne is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "quiet" "+")
@0: Anne is kind.[(triple1)] Bob is quiet.[(triple2)] Charlie is blue.[(triple3)] Harry is quiet.[(triple4)] @1: Bob is blue.[(((triple2) -> rule1))] Charlie is nice.[(((triple3) -> rule2))] Harry is blue.[(((triple4) -> rule1))] @2: Bob is nice.[(((((triple2) -> rule1)) -> rule2))] Harry is nice.[(((((triple4) -> rule1)) -> rule2))]
Anne is kind.
("Anne" "is" "kind" "+")
triple1
Bob is quiet.
("Bob" "is" "quiet" "+")
triple2
Charlie is blue.
("Charlie" "is" "blue" "+")
triple3
Harry is quiet.
("Harry" "is" "quiet" "+")
triple4
Bob is blue.
("Bob" "is" "blue" "+")
((triple2) -> (rule1 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
((triple3) -> (rule2 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
((triple4) -> (rule1 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
((((triple2) -> (rule1 % int2))) -> (rule2 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2
Harry is nice.
("Harry" "is" "nice" "+")
((((triple4) -> (rule1 % int2))) -> (rule2 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2