Bob is green. Bob is quiet. Bob is white. Fiona is green. Gary is kind. Gary is quiet. Harry is kind. All red people are green. Red people are quiet. All big, rough people are green. Green people are red. If Gary is quiet and Gary is green then Gary is big. If Gary is quiet and Gary is big then Gary is rough. If someone is quiet then they are red. Big, green people are kind.
Bob is green.
("Bob" "is" "green" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Bob is white.
("Bob" "is" "white" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
Harry is kind.
("Harry" "is" "kind" "+")
All red people are green.
((("someone" "is" "red" "+")) -> ("someone" "is" "green" "+"))
Red people are quiet.
((("someone" "is" "red" "+")) -> ("someone" "is" "quiet" "+"))
All big, rough people are green.
((("someone" "is" "big" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "green" "+"))
Green people are red.
((("someone" "is" "green" "+")) -> ("someone" "is" "red" "+"))
If Gary is quiet and Gary is green then Gary is big.
((("Gary" "is" "quiet" "+") ("Gary" "is" "green" "+")) -> ("Gary" "is" "big" "+"))
If Gary is quiet and Gary is big then Gary is rough.
((("Gary" "is" "quiet" "+") ("Gary" "is" "big" "+")) -> ("Gary" "is" "rough" "+"))
If someone is quiet then they are red.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "red" "+"))
Big, green people are kind.
((("someone" "is" "big" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "kind" "+"))
Gary is kind.
True
1
proof
[(triple5 OR ((((triple6 ((((triple6) -> rule7)) -> rule1)) -> rule5) ((((triple6) -> rule7)) -> rule1)) -> rule8))]
("Gary" "is" "kind" "+")
triple5
((((triple6 ((((triple6) -> (rule7 % int4))) -> (rule1 % int3))) -> (rule5 % int2)) ((((triple6) -> (rule7 % int4))) -> (rule1 % int3))) -> (rule8 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4
Bob is not white.
False
1
inv-proof
[(triple3)]
("Bob" "is" "white" "-")
triple3
Gary is red.
True
2
proof
[(((triple6) -> rule7))]
("Gary" "is" "red" "+")
((triple6) -> (rule7 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is not red.
False
2
inv-proof
[(((triple6) -> rule7))]
("Gary" "is" "red" "-")
((triple6) -> (rule7 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Fiona is quiet.
True
3
proof
[(((((triple4) -> rule4)) -> rule2))]
("Fiona" "is" "quiet" "+")
((((triple4) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Gary is not green.
False
3
inv-proof
[(((((triple6) -> rule7)) -> rule1))]
("Gary" "is" "green" "-")
((((triple6) -> (rule7 % int2))) -> (rule1 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is big.
True
5
proof
[(((triple6 ((((triple6) -> rule7)) -> rule1)) -> rule5))]
("Gary" "is" "big" "+")
((triple6 ((((triple6) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is not big.
False
5
inv-proof
[(((triple6 ((((triple6) -> rule7)) -> rule1)) -> rule5))]
("Gary" "is" "big" "-")
((triple6 ((((triple6) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Harry is not quiet.
Unknown
inv-rconc
[@4: Harry is quiet.[CWA. Example of deepest failure = (rule2 <- rule4 <- rule1 <- rule7 <- FAIL)]]
("Harry" "is" "quiet" "-")
Harry is green.
Unknown
rconc
[@5: Harry is green.[CWA. Example of deepest failure = (rule1 <- rule7 <- rule2 <- rule4 <- rule3 <- FAIL)]]
("Harry" "is" "green" "+")
Harry is not red.
Unknown
inv-rconc
[@4: Harry is red.[CWA. Example of deepest failure = (rule4 <- rule1 <- rule7 <- rule2 <- FAIL)]]
("Harry" "is" "red" "-")
Fiona is kind.
Unknown
rconc
[@1: Fiona is kind.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Fiona" "is" "kind" "+")
Gary is not white.
Unknown
inv-random
[@0: Gary is white.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "white" "-")
Bob is rough.
Unknown
random
[@0: Bob is rough.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "rough" "+")
Harry is not rough.
Unknown
inv-random
[@0: Harry is rough.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "rough" "-")
Fiona is rough.
Unknown
random
[@0: Fiona is rough.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "rough" "+")
@0: Bob is green.[(triple1 OR ((((triple2) -> rule7)) -> rule1))] Bob is quiet.[(triple2 OR ((((triple1) -> rule4)) -> rule2))] Bob is white.[(triple3)] Fiona is green.[(triple4)] Gary is kind.[(triple5 OR ((((triple6 ((((triple6) -> rule7)) -> rule1)) -> rule5) ((((triple6) -> rule7)) -> rule1)) -> rule8))] Gary is quiet.[(triple6)] Harry is kind.[(triple7)] @1: Bob is red.[(((triple1) -> rule4) OR ((triple2) -> rule7))] Fiona is red.[(((triple4) -> rule4))] Gary is red.[(((triple6) -> rule7))] @2: Fiona is quiet.[(((((triple4) -> rule4)) -> rule2))] Gary is green.[(((((triple6) -> rule7)) -> rule1))] @3: Gary is big.[(((triple6 ((((triple6) -> rule7)) -> rule1)) -> rule5))] @4: Gary is rough.[(((triple6 ((triple6 ((((triple6) -> rule7)) -> rule1)) -> rule5)) -> rule6))]
Bob is green.
("Bob" "is" "green" "+")
triple1
((((triple2) -> (rule7 % int2))) -> (rule1 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
triple2
((((triple1) -> (rule4 % int2))) -> (rule2 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
triple3
Fiona is green.
("Fiona" "is" "green" "+")
triple4
Gary is kind.
("Gary" "is" "kind" "+")
triple5
((((triple6 ((((triple6) -> (rule7 % int4))) -> (rule1 % int3))) -> (rule5 % int2)) ((((triple6) -> (rule7 % int4))) -> (rule1 % int3))) -> (rule8 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4
Gary is quiet.
("Gary" "is" "quiet" "+")
triple6
Harry is kind.
("Harry" "is" "kind" "+")
triple7
Bob is red.
("Bob" "is" "red" "+")
((triple1) -> (rule4 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
((triple2) -> (rule7 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
((triple4) -> (rule4 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
((triple6) -> (rule7 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((((triple4) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
((((triple6) -> (rule7 % int2))) -> (rule1 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
((triple6 ((((triple6) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is rough.
("Gary" "is" "rough" "+")
((triple6 ((triple6 ((((triple6) -> (rule7 % int4))) -> (rule1 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
int4