Charlie is nice. Charlie is quiet. Charlie is rough. Charlie is white. Dave is big. Dave is nice. Dave is quiet. Dave is smart. Dave is white. Erin is blue. Erin is nice. Erin is quiet. Erin is rough. Erin is white. Gary is nice. Gary is smart. Nice things are quiet. If Gary is quiet and Gary is nice then Gary is blue. If something is rough then it is white. All white, blue things are big. If Charlie is quiet and Charlie is white then Charlie is big. If something is blue then it is rough. Quiet, nice things are smart.
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Dave is white.
("Dave" "is" "white" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Erin is quiet.
("Erin" "is" "quiet" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is white.
("Erin" "is" "white" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Nice things are quiet.
((("something" "is" "nice" "+")) -> ("something" "is" "quiet" "+"))
If Gary is quiet and Gary is nice then Gary is blue.
((("Gary" "is" "quiet" "+") ("Gary" "is" "nice" "+")) -> ("Gary" "is" "blue" "+"))
If something is rough then it is white.
((("something" "is" "rough" "+")) -> ("something" "is" "white" "+"))
All white, blue things are big.
((("something" "is" "white" "+") ("something" "is" "blue" "+")) -> ("something" "is" "big" "+"))
If Charlie is quiet and Charlie is white then Charlie is big.
((("Charlie" "is" "quiet" "+") ("Charlie" "is" "white" "+")) -> ("Charlie" "is" "big" "+"))
If something is blue then it is rough.
((("something" "is" "blue" "+")) -> ("something" "is" "rough" "+"))
Quiet, nice things are smart.
((("something" "is" "quiet" "+") ("something" "is" "nice" "+")) -> ("something" "is" "smart" "+"))
Charlie is nice.
True
1
proof
[(triple1)]
("Charlie" "is" "nice" "+")
triple1
Charlie is not quiet.
False
1
inv-proof
[(triple2 OR ((triple1) -> rule1))]
("Charlie" "is" "quiet" "-")
triple2
((triple1) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Gary is quiet.
True
2
proof
[(((triple15) -> rule1))]
("Gary" "is" "quiet" "+")
((triple15) -> (rule1 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Charlie is not big.
False
3
inv-proof
[(((triple2 triple4) -> rule5) OR ((triple2 ((triple3) -> rule3)) -> rule5) OR ((((triple1) -> rule1) triple4) -> rule5) OR ((((triple1) -> rule1) ((triple3) -> rule3)) -> rule5))]
("Charlie" "is" "big" "-")
((triple2 triple4) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((triple2 ((triple3) -> (rule3 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
((((triple1) -> (rule1 % int2)) triple4) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
((((triple1) -> (rule1 % int3)) ((triple3) -> (rule3 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int3
Gary is blue.
True
4
proof
[(((((triple15) -> rule1) triple15) -> rule2))]
("Gary" "is" "blue" "+")
((((triple15) -> (rule1 % int2)) triple15) -> (rule2 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is not blue.
False
4
inv-proof
[(((((triple15) -> rule1) triple15) -> rule2))]
("Gary" "is" "blue" "-")
((((triple15) -> (rule1 % int2)) triple15) -> (rule2 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is rough.
True
5
proof
[(((((((triple15) -> rule1) triple15) -> rule2)) -> rule6))]
("Gary" "is" "rough" "+")
((((((triple15) -> (rule1 % int3)) triple15) -> (rule2 % int2))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is not rough.
False
5
inv-proof
[(((((((triple15) -> rule1) triple15) -> rule2)) -> rule6))]
("Gary" "is" "rough" "-")
((((((triple15) -> (rule1 % int3)) triple15) -> (rule2 % int2))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is white.
True
6
proof
[(((((((((triple15) -> rule1) triple15) -> rule2)) -> rule6)) -> rule3))]
("Gary" "is" "white" "+")
((((((((triple15) -> (rule1 % int4)) triple15) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
Gary is not white.
False
6
inv-proof
[(((((((((triple15) -> rule1) triple15) -> rule2)) -> rule6)) -> rule3))]
("Gary" "is" "white" "-")
((((((((triple15) -> (rule1 % int4)) triple15) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
Gary is big.
True
11
proof
[(((((((((((triple15) -> rule1) triple15) -> rule2)) -> rule6)) -> rule3) ((((triple15) -> rule1) triple15) -> rule2)) -> rule4))]
("Gary" "is" "big" "+")
((((((((((triple15) -> (rule1 % int5)) triple15) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule3 % int2)) ((((triple15) -> (rule1 % int5)) triple15) -> (rule2 % int4))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is blue.
("Gary" "is" "blue" "+")
int4
Gary is quiet.
("Gary" "is" "quiet" "+")
int5
Gary is not big.
False
11
inv-proof
[(((((((((((triple15) -> rule1) triple15) -> rule2)) -> rule6)) -> rule3) ((((triple15) -> rule1) triple15) -> rule2)) -> rule4))]
("Gary" "is" "big" "-")
((((((((((triple15) -> (rule1 % int5)) triple15) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule3 % int2)) ((((triple15) -> (rule1 % int5)) triple15) -> (rule2 % int4))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is blue.
("Gary" "is" "blue" "+")
int4
Gary is quiet.
("Gary" "is" "quiet" "+")
int5
Dave is not rough.
Unknown
inv-rconc
[@1: Dave is rough.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Dave" "is" "rough" "-")
Dave is blue.
Unknown
random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "+")
@0: Charlie is nice.[(triple1)] Charlie is quiet.[(triple2 OR ((triple1) -> rule1))] Charlie is rough.[(triple3)] Charlie is white.[(triple4 OR ((triple3) -> rule3))] Dave is big.[(triple5)] Dave is nice.[(triple6)] Dave is quiet.[(triple7 OR ((triple6) -> rule1))] Dave is smart.[(triple8 OR ((triple7 triple6) -> rule7) OR ((((triple6) -> rule1) triple6) -> rule7))] Dave is white.[(triple9)] Erin is blue.[(triple10)] Erin is nice.[(triple11)] Erin is quiet.[(triple12 OR ((triple11) -> rule1))] Erin is rough.[(triple13 OR ((triple10) -> rule6))] Erin is white.[(triple14 OR ((triple13) -> rule3) OR ((((triple10) -> rule6)) -> rule3))] Gary is nice.[(triple15)] Gary is smart.[(triple16 OR ((((triple15) -> rule1) triple15) -> rule7))] @1: Charlie is big.[(((triple2 triple4) -> rule5) OR ((triple2 ((triple3) -> rule3)) -> rule5) OR ((((triple1) -> rule1) triple4) -> rule5) OR ((((triple1) -> rule1) ((triple3) -> rule3)) -> rule5))] Charlie is smart.[(((triple2 triple1) -> rule7) OR ((((triple1) -> rule1) triple1) -> rule7))] Erin is big.[(((triple14 triple10) -> rule4) OR ((((triple13) -> rule3) triple10) -> rule4) OR ((((((triple10) -> rule6)) -> rule3) triple10) -> rule4))] Erin is smart.[(((triple12 triple11) -> rule7) OR ((((triple11) -> rule1) triple11) -> rule7))] Gary is quiet.[(((triple15) -> rule1))] @2: Gary is blue.[(((((triple15) -> rule1) triple15) -> rule2))] @3: Gary is rough.[(((((((triple15) -> rule1) triple15) -> rule2)) -> rule6))] @4: Gary is white.[(((((((((triple15) -> rule1) triple15) -> rule2)) -> rule6)) -> rule3))] @5: Gary is big.[(((((((((((triple15) -> rule1) triple15) -> rule2)) -> rule6)) -> rule3) ((((triple15) -> rule1) triple15) -> rule2)) -> rule4))]
Charlie is nice.
("Charlie" "is" "nice" "+")
triple1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple2
((triple1) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
triple3
Charlie is white.
("Charlie" "is" "white" "+")
triple4
((triple3) -> (rule3 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
triple5
Dave is nice.
("Dave" "is" "nice" "+")
triple6
Dave is quiet.
("Dave" "is" "quiet" "+")
triple7
((triple6) -> (rule1 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
triple8
((triple7 triple6) -> (rule7 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
((((triple6) -> (rule1 % int2)) triple6) -> (rule7 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is white.
("Dave" "is" "white" "+")
triple9
Erin is blue.
("Erin" "is" "blue" "+")
triple10
Erin is nice.
("Erin" "is" "nice" "+")
triple11
Erin is quiet.
("Erin" "is" "quiet" "+")
triple12
((triple11) -> (rule1 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
triple13
((triple10) -> (rule6 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
triple14
((triple13) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
((((triple10) -> (rule6 % int2))) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
triple15
Gary is smart.
("Gary" "is" "smart" "+")
triple16
((((triple15) -> (rule1 % int2)) triple15) -> (rule7 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
((triple2 triple4) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((triple2 ((triple3) -> (rule3 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
((((triple1) -> (rule1 % int2)) triple4) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
((((triple1) -> (rule1 % int3)) ((triple3) -> (rule3 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
((triple2 triple1) -> (rule7 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
((((triple1) -> (rule1 % int2)) triple1) -> (rule7 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
((triple14 triple10) -> (rule4 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
((((triple13) -> (rule3 % int2)) triple10) -> (rule4 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
((((((triple10) -> (rule6 % int3))) -> (rule3 % int2)) triple10) -> (rule4 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
int3
Erin is smart.
("Erin" "is" "smart" "+")
((triple12 triple11) -> (rule7 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
((((triple11) -> (rule1 % int2)) triple11) -> (rule7 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
((triple15) -> (rule1 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
((((triple15) -> (rule1 % int2)) triple15) -> (rule2 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
((((((triple15) -> (rule1 % int3)) triple15) -> (rule2 % int2))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is white.
("Gary" "is" "white" "+")
((((((((triple15) -> (rule1 % int4)) triple15) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
Gary is big.
("Gary" "is" "big" "+")
((((((((((triple15) -> (rule1 % int5)) triple15) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule3 % int2)) ((((triple15) -> (rule1 % int5)) triple15) -> (rule2 % int4))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is blue.
("Gary" "is" "blue" "+")
int4
Gary is quiet.
("Gary" "is" "quiet" "+")
int5