Anne is cold. Bob is green. Bob is red. Charlie is red. Charlie is round. Harry is round. Harry is white. If something is round then it is green. Green things are red.
Anne is cold.
("Anne" "is" "cold" "+")
Bob is green.
("Bob" "is" "green" "+")
Bob is red.
("Bob" "is" "red" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is white.
("Harry" "is" "white" "+")
If something is round then it is green.
((("something" "is" "round" "+")) -> ("something" "is" "green" "+"))
Green things are red.
((("something" "is" "green" "+")) -> ("something" "is" "red" "+"))
Bob is red.
True
1
proof
[(triple3 OR ((triple2) -> rule2))]
("Bob" "is" "red" "+")
triple3
((triple2) -> (rule2 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Anne is not cold.
False
1
inv-proof
[(triple1)]
("Anne" "is" "cold" "-")
triple1
Harry is green.
True
2
proof
[(((triple6) -> rule1))]
("Harry" "is" "green" "+")
((triple6) -> (rule1 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is not green.
False
2
inv-proof
[(((triple6) -> rule1))]
("Harry" "is" "green" "-")
((triple6) -> (rule1 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is red.
True
3
proof
[(((((triple6) -> rule1)) -> rule2))]
("Harry" "is" "red" "+")
((((triple6) -> (rule1 % int2))) -> (rule2 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
Harry is not red.
False
3
inv-proof
[(((((triple6) -> rule1)) -> rule2))]
("Harry" "is" "red" "-")
((((triple6) -> (rule1 % int2))) -> (rule2 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
Anne is not green.
Unknown
inv-rconc
[@1: Anne is green.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Anne" "is" "green" "-")
Anne is red.
Unknown
rconc
[@2: Anne is red.[CWA. Example of deepest failure = (rule2 <- rule1 <- FAIL)]]
("Anne" "is" "red" "+")
Harry is not cold.
Unknown
inv-random
[@0: Harry is cold.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "cold" "-")
Bob is nice.
Unknown
random
[@0: Bob is nice.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "nice" "+")
Harry is not smart.
Unknown
inv-random
[@0: Harry is smart.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "smart" "-")
Bob is cold.
Unknown
random
[@0: Bob is cold.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "cold" "+")
@0: Anne is cold.[(triple1)] Bob is green.[(triple2)] Bob is red.[(triple3 OR ((triple2) -> rule2))] Charlie is red.[(triple4 OR ((((triple5) -> rule1)) -> rule2))] Charlie is round.[(triple5)] Harry is round.[(triple6)] Harry is white.[(triple7)] @1: Charlie is green.[(((triple5) -> rule1))] Harry is green.[(((triple6) -> rule1))] @2: Harry is red.[(((((triple6) -> rule1)) -> rule2))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
Bob is green.
("Bob" "is" "green" "+")
triple2
Bob is red.
("Bob" "is" "red" "+")
triple3
((triple2) -> (rule2 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
triple4
((((triple5) -> (rule1 % int2))) -> (rule2 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
triple5
Harry is round.
("Harry" "is" "round" "+")
triple6
Harry is white.
("Harry" "is" "white" "+")
triple7
Charlie is green.
("Charlie" "is" "green" "+")
((triple5) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
((triple6) -> (rule1 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
((((triple6) -> (rule1 % int2))) -> (rule2 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2