Charlie is red. Erin is big. Erin is furry. Erin is green. Erin is round. Gary is big. Gary is green. Round, red people are blue. If Erin is quiet then Erin is round. Red people are round. All blue people are green. Blue, quiet people are furry. If someone is blue and green then they are furry.
Charlie is red.
("Charlie" "is" "red" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is round.
("Erin" "is" "round" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is green.
("Gary" "is" "green" "+")
Round, red people are blue.
((("someone" "is" "round" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "blue" "+"))
If Erin is quiet then Erin is round.
((("Erin" "is" "quiet" "+")) -> ("Erin" "is" "round" "+"))
Red people are round.
((("someone" "is" "red" "+")) -> ("someone" "is" "round" "+"))
All blue people are green.
((("someone" "is" "blue" "+")) -> ("someone" "is" "green" "+"))
Blue, quiet people are furry.
((("someone" "is" "blue" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "furry" "+"))
If someone is blue and green then they are furry.
((("someone" "is" "blue" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "furry" "+"))
Erin is furry.
True
1
proof
[(triple3)]
("Erin" "is" "furry" "+")
triple3
Erin is not furry.
False
1
inv-proof
[(triple3)]
("Erin" "is" "furry" "-")
triple3
Charlie is round.
True
2
proof
[(((triple1) -> rule3))]
("Charlie" "is" "round" "+")
((triple1) -> (rule3 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is not round.
False
2
inv-proof
[(((triple1) -> rule3))]
("Charlie" "is" "round" "-")
((triple1) -> (rule3 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is blue.
True
4
proof
[(((((triple1) -> rule3) triple1) -> rule1))]
("Charlie" "is" "blue" "+")
((((triple1) -> (rule3 % int2)) triple1) -> (rule1 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is not blue.
False
4
inv-proof
[(((((triple1) -> rule3) triple1) -> rule1))]
("Charlie" "is" "blue" "-")
((((triple1) -> (rule3 % int2)) triple1) -> (rule1 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is green.
True
5
proof
[(((((((triple1) -> rule3) triple1) -> rule1)) -> rule4))]
("Charlie" "is" "green" "+")
((((((triple1) -> (rule3 % int3)) triple1) -> (rule1 % int2))) -> (rule4 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3
Charlie is not green.
False
5
inv-proof
[(((((((triple1) -> rule3) triple1) -> rule1)) -> rule4))]
("Charlie" "is" "green" "-")
((((((triple1) -> (rule3 % int3)) triple1) -> (rule1 % int2))) -> (rule4 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3
Erin is not blue.
Unknown
inv-rconc
[@1: Erin is blue.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Erin" "is" "blue" "-")
Gary is round.
Unknown
rconc
[@1: Gary is round.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Gary" "is" "round" "+")
Gary is not furry.
Unknown
inv-rconc
[@2: Gary is furry.[CWA. Example of deepest failure = (rule6 <- rule1 <- FAIL)]]
("Gary" "is" "furry" "-")
Gary is blue.
Unknown
rconc
[@1: Gary is blue.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Gary" "is" "blue" "+")
Gary is not quiet.
Unknown
inv-random
[@0: Gary is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "quiet" "-")
Charlie is quiet.
Unknown
random
[@0: Charlie is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "quiet" "+")
Erin is not red.
Unknown
inv-random
[@0: Erin is red.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "red" "-")
Erin is quiet.
Unknown
random
[@0: Erin is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "quiet" "+")
@0: Charlie is red.[(triple1)] Erin is big.[(triple2)] Erin is furry.[(triple3)] Erin is green.[(triple4)] Erin is round.[(triple5)] Gary is big.[(triple6)] Gary is green.[(triple7)] @1: Charlie is round.[(((triple1) -> rule3))] @2: Charlie is blue.[(((((triple1) -> rule3) triple1) -> rule1))] @3: Charlie is green.[(((((((triple1) -> rule3) triple1) -> rule1)) -> rule4))] @4: Charlie is furry.[(((((((triple1) -> rule3) triple1) -> rule1) ((((((triple1) -> rule3) triple1) -> rule1)) -> rule4)) -> rule6))]
Charlie is red.
("Charlie" "is" "red" "+")
triple1
Erin is big.
("Erin" "is" "big" "+")
triple2
Erin is furry.
("Erin" "is" "furry" "+")
triple3
Erin is green.
("Erin" "is" "green" "+")
triple4
Erin is round.
("Erin" "is" "round" "+")
triple5
Gary is big.
("Gary" "is" "big" "+")
triple6
Gary is green.
("Gary" "is" "green" "+")
triple7
Charlie is round.
("Charlie" "is" "round" "+")
((triple1) -> (rule3 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
((((triple1) -> (rule3 % int2)) triple1) -> (rule1 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
((((((triple1) -> (rule3 % int3)) triple1) -> (rule1 % int2))) -> (rule4 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
((((((triple1) -> (rule3 % int4)) triple1) -> (rule1 % int3)) ((((((triple1) -> (rule3 % int4)) triple1) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule6 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
int4