Bob is white. Erin is kind. Gary is not kind. Gary is quiet. Harry is quiet. Harry is smart. Harry is white. All white people are smart. If someone is red and white then they are smart. Cold, kind people are smart. Cold people are not red. All blue, smart people are red. If someone is smart and kind then they are blue. If someone is white and smart then they are kind. If Bob is red then Bob is quiet.
Bob is white.
("Bob" "is" "white" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Gary is not kind.
("Gary" "is" "kind" "-")
Gary is quiet.
("Gary" "is" "quiet" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
Harry is smart.
("Harry" "is" "smart" "+")
Harry is white.
("Harry" "is" "white" "+")
All white people are smart.
((("someone" "is" "white" "+")) -> ("someone" "is" "smart" "+"))
If someone is red and white then they are smart.
((("someone" "is" "red" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "smart" "+"))
Cold, kind people are smart.
((("someone" "is" "cold" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "smart" "+"))
Cold people are not red.
((("someone" "is" "cold" "+")) -> ("someone" "is" "red" "-"))
All blue, smart people are red.
((("someone" "is" "blue" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "red" "+"))
If someone is smart and kind then they are blue.
((("someone" "is" "smart" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "blue" "+"))
If someone is white and smart then they are kind.
((("someone" "is" "white" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "kind" "+"))
If Bob is red then Bob is quiet.
((("Bob" "is" "red" "+")) -> ("Bob" "is" "quiet" "+"))
Harry is quiet.
True
1
proof
[(triple5)]
("Harry" "is" "quiet" "+")
triple5
Bob is not white.
False
1
inv-proof
[(triple1)]
("Bob" "is" "white" "-")
triple1
Harry is kind.
True
3
proof
[(((triple7 triple6) -> rule7) OR ((triple7 ((triple7) -> rule1)) -> rule7))]
("Harry" "is" "kind" "+")
((triple7 triple6) -> (rule7 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
((triple7 ((triple7) -> (rule1 % int2))) -> (rule7 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Harry is not kind.
False
3
inv-proof
[(((triple7 triple6) -> rule7) OR ((triple7 ((triple7) -> rule1)) -> rule7))]
("Harry" "is" "kind" "-")
((triple7 triple6) -> (rule7 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
((triple7 ((triple7) -> (rule1 % int2))) -> (rule7 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Harry is blue.
True
5
proof
[(((triple6 ((triple7 triple6) -> rule7)) -> rule6) OR ((((triple7) -> rule1) ((triple7 triple6) -> rule7)) -> rule6) OR ((triple6 ((triple7 ((triple7) -> rule1)) -> rule7)) -> rule6) OR ((((triple7) -> rule1) ((triple7 ((triple7) -> rule1)) -> rule7)) -> rule6))]
("Harry" "is" "blue" "+")
((triple6 ((triple7 triple6) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
((((triple7) -> (rule1 % int3)) ((triple7 triple6) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
((triple6 ((triple7 ((triple7) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
((((triple7) -> (rule1 % int3)) ((triple7 ((triple7) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
Harry is not blue.
False
5
inv-proof
[(((triple6 ((triple7 triple6) -> rule7)) -> rule6) OR ((((triple7) -> rule1) ((triple7 triple6) -> rule7)) -> rule6) OR ((triple6 ((triple7 ((triple7) -> rule1)) -> rule7)) -> rule6) OR ((((triple7) -> rule1) ((triple7 ((triple7) -> rule1)) -> rule7)) -> rule6))]
("Harry" "is" "blue" "-")
((triple6 ((triple7 triple6) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
((((triple7) -> (rule1 % int3)) ((triple7 triple6) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
((triple6 ((triple7 ((triple7) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
((((triple7) -> (rule1 % int3)) ((triple7 ((triple7) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
Bob is blue.
True
7
proof
[(((((triple1) -> rule1) ((triple1 ((triple1) -> rule1)) -> rule7)) -> rule6))]
("Bob" "is" "blue" "+")
((((triple1) -> (rule1 % int3)) ((triple1 ((triple1) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
int3
Bob is not blue.
False
7
inv-proof
[(((((triple1) -> rule1) ((triple1 ((triple1) -> rule1)) -> rule7)) -> rule6))]
("Bob" "is" "blue" "-")
((((triple1) -> (rule1 % int3)) ((triple1 ((triple1) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
int3
Bob is red.
True
10
proof
[(((((((triple1) -> rule1) ((triple1 ((triple1) -> rule1)) -> rule7)) -> rule6) ((triple1) -> rule1)) -> rule5))]
("Bob" "is" "red" "+")
((((((triple1) -> (rule1 % int4)) ((triple1 ((triple1) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule6 % int2)) ((triple1) -> (rule1 % int4))) -> (rule5 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
int3
Bob is smart.
("Bob" "is" "smart" "+")
int4
Bob is not red.
False
10
inv-proof
[(((((((triple1) -> rule1) ((triple1 ((triple1) -> rule1)) -> rule7)) -> rule6) ((triple1) -> rule1)) -> rule5))]
("Bob" "is" "red" "-")
((((((triple1) -> (rule1 % int4)) ((triple1 ((triple1) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule6 % int2)) ((triple1) -> (rule1 % int4))) -> (rule5 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
int3
Bob is smart.
("Bob" "is" "smart" "+")
int4
Bob is quiet.
True
11
proof
[(((((((((triple1) -> rule1) ((triple1 ((triple1) -> rule1)) -> rule7)) -> rule6) ((triple1) -> rule1)) -> rule5)) -> rule8))]
("Bob" "is" "quiet" "+")
((((((((triple1) -> (rule1 % int5)) ((triple1 ((triple1) -> (rule1 % int5))) -> (rule7 % int4))) -> (rule6 % int3)) ((triple1) -> (rule1 % int5))) -> (rule5 % int2))) -> (rule8 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
Bob is kind.
("Bob" "is" "kind" "+")
int4
Bob is smart.
("Bob" "is" "smart" "+")
int5
Bob is not quiet.
False
11
inv-proof
[(((((((((triple1) -> rule1) ((triple1 ((triple1) -> rule1)) -> rule7)) -> rule6) ((triple1) -> rule1)) -> rule5)) -> rule8))]
("Bob" "is" "quiet" "-")
((((((((triple1) -> (rule1 % int5)) ((triple1 ((triple1) -> (rule1 % int5))) -> (rule7 % int4))) -> (rule6 % int3)) ((triple1) -> (rule1 % int5))) -> (rule5 % int2))) -> (rule8 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
Bob is kind.
("Bob" "is" "kind" "+")
int4
Bob is smart.
("Bob" "is" "smart" "+")
int5
Erin is not blue.
Unknown
inv-rconc
[@2: Erin is blue.[CWA. Example of deepest failure = (rule6 <- rule1 <- FAIL)]]
("Erin" "is" "blue" "-")
Erin is smart.
Unknown
rconc
[@1: Erin is smart.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Erin" "is" "smart" "+")
Erin is not red.
Unknown
inv-rconc
[@2: Erin is red.[CWA. Example of deepest failure = (rule5 <- rule1 <- FAIL)]]
("Erin" "is" "red" "-")
Gary is smart.
Unknown
rconc
[@1: Gary is smart.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Gary" "is" "smart" "+")
Gary is not red.
Unknown
inv-rconc
[@2: Gary is red.[CWA. Example of deepest failure = (rule5 <- rule6 <- FAIL)]]
("Gary" "is" "red" "-")
Gary is blue.
Unknown
rconc
[@1: Gary is blue.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Gary" "is" "blue" "+")
Erin is not white.
Unknown
inv-random
[@0: Erin is white.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "white" "-")
Gary is cold.
Unknown
random
[@0: Gary is cold.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "cold" "+")
Erin is not quiet.
Unknown
inv-random
[@0: Erin is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "quiet" "-")
Erin is cold.
Unknown
random
[@0: Erin is cold.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "cold" "+")
Harry is not cold.
Unknown
inv-random
[@0: Harry is cold.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "cold" "-")
Gary is white.
Unknown
random
[@0: Gary is white.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "white" "+")
@0: Bob is white.[(triple1)] Erin is kind.[(triple2)] Gary is not kind.[(triple3)] Gary is quiet.[(triple4)] Harry is quiet.[(triple5)] Harry is smart.[(triple6 OR ((triple7) -> rule1))] Harry is white.[(triple7)] @1: Bob is smart.[(((triple1) -> rule1))] Harry is kind.[(((triple7 triple6) -> rule7) OR ((triple7 ((triple7) -> rule1)) -> rule7))] @2: Bob is kind.[(((triple1 ((triple1) -> rule1)) -> rule7))] Harry is blue.[(((triple6 ((triple7 triple6) -> rule7)) -> rule6) OR ((((triple7) -> rule1) ((triple7 triple6) -> rule7)) -> rule6) OR ((triple6 ((triple7 ((triple7) -> rule1)) -> rule7)) -> rule6) OR ((((triple7) -> rule1) ((triple7 ((triple7) -> rule1)) -> rule7)) -> rule6))] @3: Bob is blue.[(((((triple1) -> rule1) ((triple1 ((triple1) -> rule1)) -> rule7)) -> rule6))] Harry is red.[(((((triple6 ((triple7 triple6) -> rule7)) -> rule6) triple6) -> rule5) OR ((((triple6 ((triple7 triple6) -> rule7)) -> rule6) ((triple7) -> rule1)) -> rule5) OR ((((((triple7) -> rule1) ((triple7 triple6) -> rule7)) -> rule6) triple6) -> rule5) OR ((((((triple7) -> rule1) ((triple7 triple6) -> rule7)) -> rule6) ((triple7) -> rule1)) -> rule5) OR ((((triple6 ((triple7 ((triple7) -> rule1)) -> rule7)) -> rule6) triple6) -> rule5) OR ((((triple6 ((triple7 ((triple7) -> rule1)) -> rule7)) -> rule6) ((triple7) -> rule1)) -> rule5) OR ((((((triple7) -> rule1) ((triple7 ((triple7) -> rule1)) -> rule7)) -> rule6) triple6) -> rule5) OR ((((((triple7) -> rule1) ((triple7 ((triple7) -> rule1)) -> rule7)) -> rule6) ((triple7) -> rule1)) -> rule5))] @4: Bob is red.[(((((((triple1) -> rule1) ((triple1 ((triple1) -> rule1)) -> rule7)) -> rule6) ((triple1) -> rule1)) -> rule5))] @5: Bob is quiet.[(((((((((triple1) -> rule1) ((triple1 ((triple1) -> rule1)) -> rule7)) -> rule6) ((triple1) -> rule1)) -> rule5)) -> rule8))]
Bob is white.
("Bob" "is" "white" "+")
triple1
Erin is kind.
("Erin" "is" "kind" "+")
triple2
Gary is not kind.
("Gary" "is" "kind" "-")
triple3
Gary is quiet.
("Gary" "is" "quiet" "+")
triple4
Harry is quiet.
("Harry" "is" "quiet" "+")
triple5
Harry is smart.
("Harry" "is" "smart" "+")
triple6
((triple7) -> (rule1 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
triple7
Bob is smart.
("Bob" "is" "smart" "+")
((triple1) -> (rule1 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
((triple7 triple6) -> (rule7 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
((triple7 ((triple7) -> (rule1 % int2))) -> (rule7 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
((triple1 ((triple1) -> (rule1 % int2))) -> (rule7 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Harry is blue.
("Harry" "is" "blue" "+")
((triple6 ((triple7 triple6) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
((((triple7) -> (rule1 % int3)) ((triple7 triple6) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
((triple6 ((triple7 ((triple7) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
((((triple7) -> (rule1 % int3)) ((triple7 ((triple7) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
Bob is blue.
("Bob" "is" "blue" "+")
((((triple1) -> (rule1 % int3)) ((triple1 ((triple1) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
int3
Harry is red.
("Harry" "is" "red" "+")
((((triple6 ((triple7 triple6) -> (rule7 % int3))) -> (rule6 % int2)) triple6) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
int3
((((triple6 ((triple7 triple6) -> (rule7 % int4))) -> (rule6 % int3)) ((triple7) -> (rule1 % int2))) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Harry is blue.
("Harry" "is" "blue" "+")
int3
Harry is kind.
("Harry" "is" "kind" "+")
int4
((((((triple7) -> (rule1 % int4)) ((triple7 triple6) -> (rule7 % int3))) -> (rule6 % int2)) triple6) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
int3
Harry is smart.
("Harry" "is" "smart" "+")
int4
((((((triple7) -> (rule1 % int4)) ((triple7 triple6) -> (rule7 % int3))) -> (rule6 % int2)) ((triple7) -> (rule1 % int4))) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
int3
Harry is smart.
("Harry" "is" "smart" "+")
int4
((((triple6 ((triple7 ((triple7) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule6 % int2)) triple6) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
int3
Harry is smart.
("Harry" "is" "smart" "+")
int4
((((triple6 ((triple7 ((triple7) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule6 % int2)) ((triple7) -> (rule1 % int4))) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
int3
Harry is smart.
("Harry" "is" "smart" "+")
int4
((((((triple7) -> (rule1 % int4)) ((triple7 ((triple7) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule6 % int2)) triple6) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
int3
Harry is smart.
("Harry" "is" "smart" "+")
int4
((((((triple7) -> (rule1 % int4)) ((triple7 ((triple7) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule6 % int2)) ((triple7) -> (rule1 % int4))) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
int3
Harry is smart.
("Harry" "is" "smart" "+")
int4
Bob is red.
("Bob" "is" "red" "+")
((((((triple1) -> (rule1 % int4)) ((triple1 ((triple1) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule6 % int2)) ((triple1) -> (rule1 % int4))) -> (rule5 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
int3
Bob is smart.
("Bob" "is" "smart" "+")
int4
Bob is quiet.
("Bob" "is" "quiet" "+")
((((((((triple1) -> (rule1 % int5)) ((triple1 ((triple1) -> (rule1 % int5))) -> (rule7 % int4))) -> (rule6 % int3)) ((triple1) -> (rule1 % int5))) -> (rule5 % int2))) -> (rule8 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
int3
Bob is kind.
("Bob" "is" "kind" "+")
int4
Bob is smart.
("Bob" "is" "smart" "+")
int5