Bob is kind. Bob is smart. Charlie is kind. Charlie is nice. Charlie is white. Fiona is cold. Fiona is nice. Fiona is quiet. Fiona is white. Gary is cold. Gary is kind. Gary is nice. Gary is quiet. Gary is rough. Gary is smart. If Fiona is quiet then Fiona is kind. If something is rough then it is quiet. All nice, smart things are rough. Rough things are white. If something is smart then it is nice. White, kind things are smart.
Bob is kind.
("Bob" "is" "kind" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is smart.
("Gary" "is" "smart" "+")
If Fiona is quiet then Fiona is kind.
((("Fiona" "is" "quiet" "+")) -> ("Fiona" "is" "kind" "+"))
If something is rough then it is quiet.
((("something" "is" "rough" "+")) -> ("something" "is" "quiet" "+"))
All nice, smart things are rough.
((("something" "is" "nice" "+") ("something" "is" "smart" "+")) -> ("something" "is" "rough" "+"))
Rough things are white.
((("something" "is" "rough" "+")) -> ("something" "is" "white" "+"))
If something is smart then it is nice.
((("something" "is" "smart" "+")) -> ("something" "is" "nice" "+"))
White, kind things are smart.
((("something" "is" "white" "+") ("something" "is" "kind" "+")) -> ("something" "is" "smart" "+"))
Fiona is white.
True
1
proof
[(triple9)]
("Fiona" "is" "white" "+")
triple9
Fiona is not quiet.
False
1
inv-proof
[(triple8)]
("Fiona" "is" "quiet" "-")
triple8
Charlie is smart.
True
3
proof
[(((triple5 triple3) -> rule6))]
("Charlie" "is" "smart" "+")
((triple5 triple3) -> (rule6 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Fiona is not kind.
False
2
inv-proof
[(((triple8) -> rule1))]
("Fiona" "is" "kind" "-")
((triple8) -> (rule1 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Charlie is rough.
True
5
proof
[(((triple4 ((triple5 triple3) -> rule6)) -> rule3) OR ((((((triple5 triple3) -> rule6)) -> rule5) ((triple5 triple3) -> rule6)) -> rule3))]
("Charlie" "is" "rough" "+")
((triple4 ((triple5 triple3) -> (rule6 % int2))) -> (rule3 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
((((((triple5 triple3) -> (rule6 % int3))) -> (rule5 % int2)) ((triple5 triple3) -> (rule6 % int3))) -> (rule3 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Bob is not rough.
False
4
inv-proof
[(((((triple2) -> rule5) triple2) -> rule3))]
("Bob" "is" "rough" "-")
((((triple2) -> (rule5 % int2)) triple2) -> (rule3 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
int2
Charlie is quiet.
True
6
proof
[(((((triple4 ((triple5 triple3) -> rule6)) -> rule3)) -> rule2) OR ((((((((triple5 triple3) -> rule6)) -> rule5) ((triple5 triple3) -> rule6)) -> rule3)) -> rule2))]
("Charlie" "is" "quiet" "+")
((((triple4 ((triple5 triple3) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
((((((((triple5 triple3) -> (rule6 % int4))) -> (rule5 % int3)) ((triple5 triple3) -> (rule6 % int4))) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is not quiet.
False
6
inv-proof
[(((((triple4 ((triple5 triple3) -> rule6)) -> rule3)) -> rule2) OR ((((((((triple5 triple3) -> rule6)) -> rule5) ((triple5 triple3) -> rule6)) -> rule3)) -> rule2))]
("Charlie" "is" "quiet" "-")
((((triple4 ((triple5 triple3) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
((((((((triple5 triple3) -> (rule6 % int4))) -> (rule5 % int3)) ((triple5 triple3) -> (rule6 % int4))) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is not cold.
Unknown
inv-random
[@0: Charlie is cold.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "cold" "-")
Bob is cold.
Unknown
random
[@0: Bob is cold.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "cold" "+")
@0: Bob is kind.[(triple1)] Bob is smart.[(triple2)] Charlie is kind.[(triple3)] Charlie is nice.[(triple4 OR ((((triple5 triple3) -> rule6)) -> rule5))] Charlie is white.[(triple5)] Fiona is cold.[(triple6)] Fiona is nice.[(triple7 OR ((((triple9 ((triple8) -> rule1)) -> rule6)) -> rule5))] Fiona is quiet.[(triple8)] Fiona is white.[(triple9)] Gary is cold.[(triple10)] Gary is kind.[(triple11)] Gary is nice.[(triple12 OR ((triple15) -> rule5) OR ((((((triple14) -> rule4) triple11) -> rule6)) -> rule5))] Gary is quiet.[(triple13 OR ((triple14) -> rule2) OR ((((triple12 triple15) -> rule3)) -> rule2) OR ((((((triple15) -> rule5) triple15) -> rule3)) -> rule2))] Gary is rough.[(triple14 OR ((triple12 triple15) -> rule3) OR ((((triple15) -> rule5) triple15) -> rule3))] Gary is smart.[(triple15 OR ((((triple14) -> rule4) triple11) -> rule6))] @1: Bob is nice.[(((triple2) -> rule5))] Charlie is smart.[(((triple5 triple3) -> rule6))] Fiona is kind.[(((triple8) -> rule1))] Gary is white.[(((triple14) -> rule4) OR ((((triple12 triple15) -> rule3)) -> rule4) OR ((((((triple15) -> rule5) triple15) -> rule3)) -> rule4))] @2: Bob is rough.[(((((triple2) -> rule5) triple2) -> rule3))] Charlie is rough.[(((triple4 ((triple5 triple3) -> rule6)) -> rule3) OR ((((((triple5 triple3) -> rule6)) -> rule5) ((triple5 triple3) -> rule6)) -> rule3))] Fiona is smart.[(((triple9 ((triple8) -> rule1)) -> rule6))] @3: Bob is quiet.[(((((((triple2) -> rule5) triple2) -> rule3)) -> rule2))] Bob is white.[(((((((triple2) -> rule5) triple2) -> rule3)) -> rule4))] Charlie is quiet.[(((((triple4 ((triple5 triple3) -> rule6)) -> rule3)) -> rule2) OR ((((((((triple5 triple3) -> rule6)) -> rule5) ((triple5 triple3) -> rule6)) -> rule3)) -> rule2))] Fiona is rough.[(((triple7 ((triple9 ((triple8) -> rule1)) -> rule6)) -> rule3) OR ((((((triple9 ((triple8) -> rule1)) -> rule6)) -> rule5) ((triple9 ((triple8) -> rule1)) -> rule6)) -> rule3))]
Bob is kind.
("Bob" "is" "kind" "+")
triple1
Bob is smart.
("Bob" "is" "smart" "+")
triple2
Charlie is kind.
("Charlie" "is" "kind" "+")
triple3
Charlie is nice.
("Charlie" "is" "nice" "+")
triple4
((((triple5 triple3) -> (rule6 % int2))) -> (rule5 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
triple5
Fiona is cold.
("Fiona" "is" "cold" "+")
triple6
Fiona is nice.
("Fiona" "is" "nice" "+")
triple7
((((triple9 ((triple8) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple8
Fiona is white.
("Fiona" "is" "white" "+")
triple9
Gary is cold.
("Gary" "is" "cold" "+")
triple10
Gary is kind.
("Gary" "is" "kind" "+")
triple11
Gary is nice.
("Gary" "is" "nice" "+")
triple12
((triple15) -> (rule5 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
((((((triple14) -> (rule4 % int3)) triple11) -> (rule6 % int2))) -> (rule5 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
triple13
((triple14) -> (rule2 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
((((triple12 triple15) -> (rule3 % int2))) -> (rule2 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
((((((triple15) -> (rule5 % int3)) triple15) -> (rule3 % int2))) -> (rule2 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Gary is rough.
("Gary" "is" "rough" "+")
triple14
((triple12 triple15) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
((((triple15) -> (rule5 % int2)) triple15) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
triple15
((((triple14) -> (rule4 % int2)) triple11) -> (rule6 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Bob is nice.
("Bob" "is" "nice" "+")
((triple2) -> (rule5 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
((triple5 triple3) -> (rule6 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple8) -> (rule1 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
((triple14) -> (rule4 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
((((triple12 triple15) -> (rule3 % int2))) -> (rule4 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
((((((triple15) -> (rule5 % int3)) triple15) -> (rule3 % int2))) -> (rule4 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Bob is rough.
("Bob" "is" "rough" "+")
((((triple2) -> (rule5 % int2)) triple2) -> (rule3 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
((triple4 ((triple5 triple3) -> (rule6 % int2))) -> (rule3 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
((((((triple5 triple3) -> (rule6 % int3))) -> (rule5 % int2)) ((triple5 triple3) -> (rule6 % int3))) -> (rule3 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Fiona is smart.
("Fiona" "is" "smart" "+")
((triple9 ((triple8) -> (rule1 % int2))) -> (rule6 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
((((((triple2) -> (rule5 % int3)) triple2) -> (rule3 % int2))) -> (rule2 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is nice.
("Bob" "is" "nice" "+")
int3
Bob is white.
("Bob" "is" "white" "+")
((((((triple2) -> (rule5 % int3)) triple2) -> (rule3 % int2))) -> (rule4 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is nice.
("Bob" "is" "nice" "+")
int3
Charlie is quiet.
("Charlie" "is" "quiet" "+")
((((triple4 ((triple5 triple3) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
((((((((triple5 triple3) -> (rule6 % int4))) -> (rule5 % int3)) ((triple5 triple3) -> (rule6 % int4))) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Fiona is rough.
("Fiona" "is" "rough" "+")
((triple7 ((triple9 ((triple8) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
((((((triple9 ((triple8) -> (rule1 % int4))) -> (rule6 % int3))) -> (rule5 % int2)) ((triple9 ((triple8) -> (rule1 % int4))) -> (rule6 % int3))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Fiona is kind.
("Fiona" "is" "kind" "+")
int4