Anne is blue. Anne is rough. Anne is round. Anne is smart. Charlie is kind. Charlie is not white. Erin is not kind. Erin is rough. Erin is smart. Erin is white. Harry is blue. Harry is kind. Harry is rough. Harry is round. Harry is smart. Harry is white. Blue, round people are red. If someone is kind then they are red. All white, round people are rough. Rough, white people are blue. All red people are round. If someone is round then they are smart.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Anne is round.
("Anne" "is" "round" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is not white.
("Charlie" "is" "white" "-")
Erin is not kind.
("Erin" "is" "kind" "-")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Erin is white.
("Erin" "is" "white" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is smart.
("Harry" "is" "smart" "+")
Harry is white.
("Harry" "is" "white" "+")
Blue, round people are red.
((("someone" "is" "blue" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "red" "+"))
If someone is kind then they are red.
((("someone" "is" "kind" "+")) -> ("someone" "is" "red" "+"))
All white, round people are rough.
((("someone" "is" "white" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "rough" "+"))
Rough, white people are blue.
((("someone" "is" "rough" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "blue" "+"))
All red people are round.
((("someone" "is" "red" "+")) -> ("someone" "is" "round" "+"))
If someone is round then they are smart.
((("someone" "is" "round" "+")) -> ("someone" "is" "smart" "+"))
Erin is rough.
True
1
proof
[(triple8)]
("Erin" "is" "rough" "+")
triple8
Erin is not rough.
False
1
inv-proof
[(triple8)]
("Erin" "is" "rough" "-")
triple8
Erin is blue.
True
3
proof
[(((triple8 triple10) -> rule4))]
("Erin" "is" "blue" "+")
((triple8 triple10) -> (rule4 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is not blue.
False
3
inv-proof
[(((triple8 triple10) -> rule4))]
("Erin" "is" "blue" "-")
((triple8 triple10) -> (rule4 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Charlie is round.
True
3
proof
[(((((triple5) -> rule2)) -> rule5))]
("Charlie" "is" "round" "+")
((((triple5) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is not round.
False
3
inv-proof
[(((((triple5) -> rule2)) -> rule5))]
("Charlie" "is" "round" "-")
((((triple5) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is smart.
True
4
proof
[(((((((triple5) -> rule2)) -> rule5)) -> rule6))]
("Charlie" "is" "smart" "+")
((((((triple5) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
Charlie is not smart.
False
4
inv-proof
[(((((((triple5) -> rule2)) -> rule5)) -> rule6))]
("Charlie" "is" "smart" "-")
((((((triple5) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
Erin is not red.
Unknown
inv-rconc
[@3: Erin is red.[CWA. Example of deepest failure = (rule1 <- rule5 <- rule2 <- FAIL)]]
("Erin" "is" "red" "-")
Charlie is rough.
Unknown
rconc
[@1: Charlie is rough.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Charlie" "is" "rough" "+")
Erin is not round.
Unknown
inv-rconc
[@2: Erin is round.[CWA. Example of deepest failure = (rule5 <- rule1 <- FAIL)]]
("Erin" "is" "round" "-")
Charlie is blue.
Unknown
rconc
[@1: Charlie is blue.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Charlie" "is" "blue" "+")
Anne is not white.
Unknown
inv-random
[@0: Anne is white.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "white" "-")
Anne is kind.
Unknown
random
[@0: Anne is kind.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "kind" "+")
@0: Anne is blue.[(triple1)] Anne is rough.[(triple2)] Anne is round.[(triple3)] Anne is smart.[(triple4 OR ((triple3) -> rule6))] Charlie is kind.[(triple5)] Charlie is not white.[(triple6)] Erin is not kind.[(triple7)] Erin is rough.[(triple8)] Erin is smart.[(triple9)] Erin is white.[(triple10)] Harry is blue.[(triple11 OR ((triple13 triple16) -> rule4) OR ((((triple16 triple14) -> rule3) triple16) -> rule4) OR ((((triple16 ((((triple12) -> rule2)) -> rule5)) -> rule3) triple16) -> rule4))] Harry is kind.[(triple12)] Harry is rough.[(triple13 OR ((triple16 triple14) -> rule3) OR ((triple16 ((((triple12) -> rule2)) -> rule5)) -> rule3))] Harry is round.[(triple14 OR ((((triple12) -> rule2)) -> rule5))] Harry is smart.[(triple15 OR ((triple14) -> rule6) OR ((((((triple12) -> rule2)) -> rule5)) -> rule6))] Harry is white.[(triple16)] @1: Anne is red.[(((triple1 triple3) -> rule1))] Charlie is red.[(((triple5) -> rule2))] Erin is blue.[(((triple8 triple10) -> rule4))] Harry is red.[(((triple12) -> rule2) OR ((triple11 triple14) -> rule1) OR ((((triple13 triple16) -> rule4) triple14) -> rule1) OR ((((((triple16 triple14) -> rule3) triple16) -> rule4) triple14) -> rule1))] @2: Charlie is round.[(((((triple5) -> rule2)) -> rule5))] @3: Charlie is smart.[(((((((triple5) -> rule2)) -> rule5)) -> rule6))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Anne is rough.
("Anne" "is" "rough" "+")
triple2
Anne is round.
("Anne" "is" "round" "+")
triple3
Anne is smart.
("Anne" "is" "smart" "+")
triple4
((triple3) -> (rule6 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
triple5
Charlie is not white.
("Charlie" "is" "white" "-")
triple6
Erin is not kind.
("Erin" "is" "kind" "-")
triple7
Erin is rough.
("Erin" "is" "rough" "+")
triple8
Erin is smart.
("Erin" "is" "smart" "+")
triple9
Erin is white.
("Erin" "is" "white" "+")
triple10
Harry is blue.
("Harry" "is" "blue" "+")
triple11
((triple13 triple16) -> (rule4 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
((((triple16 triple14) -> (rule3 % int2)) triple16) -> (rule4 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
((((triple16 ((((triple12) -> (rule2 % int4))) -> (rule5 % int3))) -> (rule3 % int2)) triple16) -> (rule4 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
Harry is red.
("Harry" "is" "red" "+")
int4
Harry is kind.
("Harry" "is" "kind" "+")
triple12
Harry is rough.
("Harry" "is" "rough" "+")
triple13
((triple16 triple14) -> (rule3 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
((triple16 ((((triple12) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
int3
Harry is round.
("Harry" "is" "round" "+")
triple14
((((triple12) -> (rule2 % int2))) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
triple15
((triple14) -> (rule6 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
((((((triple12) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
int3
Harry is white.
("Harry" "is" "white" "+")
triple16
Anne is red.
("Anne" "is" "red" "+")
((triple1 triple3) -> (rule1 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
((triple5) -> (rule2 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
((triple8 triple10) -> (rule4 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
((triple12) -> (rule2 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
((triple11 triple14) -> (rule1 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
((((triple13 triple16) -> (rule4 % int2)) triple14) -> (rule1 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
((((((triple16 triple14) -> (rule3 % int3)) triple16) -> (rule4 % int2)) triple14) -> (rule1 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
((((triple5) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
((((((triple5) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3