Charlie is cold. Charlie is green. Charlie is kind. Charlie is nice. Charlie is rough. Charlie is young. Dave is cold. Dave is green. Dave is nice. Dave is rough. Dave is round. Dave is young. Gary is cold. Gary is green. Gary is round. If something is young and rough then it is nice. If something is cold and green then it is rough. All rough things are young.
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Dave is round.
("Dave" "is" "round" "+")
Dave is young.
("Dave" "is" "young" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is round.
("Gary" "is" "round" "+")
If something is young and rough then it is nice.
((("something" "is" "young" "+") ("something" "is" "rough" "+")) -> ("something" "is" "nice" "+"))
If something is cold and green then it is rough.
((("something" "is" "cold" "+") ("something" "is" "green" "+")) -> ("something" "is" "rough" "+"))
All rough things are young.
((("something" "is" "rough" "+")) -> ("something" "is" "young" "+"))
Dave is nice.
True
1
proof
[(triple9 OR ((triple12 triple10) -> rule1) OR ((triple12 ((triple7 triple8) -> rule2)) -> rule1) OR ((((triple10) -> rule3) triple10) -> rule1) OR ((((triple10) -> rule3) ((triple7 triple8) -> rule2)) -> rule1) OR ((((((triple7 triple8) -> rule2)) -> rule3) triple10) -> rule1) OR ((((((triple7 triple8) -> rule2)) -> rule3) ((triple7 triple8) -> rule2)) -> rule1))]
("Dave" "is" "nice" "+")
triple9
((triple12 triple10) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
((triple12 ((triple7 triple8) -> (rule2 % int2))) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
((((triple10) -> (rule3 % int2)) triple10) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
((((triple10) -> (rule3 % int3)) ((triple7 triple8) -> (rule2 % int2))) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Dave is young.
("Dave" "is" "young" "+")
int3
((((((triple7 triple8) -> (rule2 % int3))) -> (rule3 % int2)) triple10) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
((((((triple7 triple8) -> (rule2 % int3))) -> (rule3 % int2)) ((triple7 triple8) -> (rule2 % int3))) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
Dave is not round.
False
1
inv-proof
[(triple11)]
("Dave" "is" "round" "-")
triple11
Gary is rough.
True
3
proof
[(((triple13 triple14) -> rule2))]
("Gary" "is" "rough" "+")
((triple13 triple14) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is not rough.
False
3
inv-proof
[(((triple13 triple14) -> rule2))]
("Gary" "is" "rough" "-")
((triple13 triple14) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is not kind.
Unknown
inv-random
[@0: Gary is kind.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "kind" "-")
Charlie is round.
Unknown
random
[@0: Charlie is round.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "round" "+")
@0: Charlie is cold.[(triple1)] Charlie is green.[(triple2)] Charlie is kind.[(triple3)] Charlie is nice.[(triple4 OR ((triple6 triple5) -> rule1) OR ((triple6 ((triple1 triple2) -> rule2)) -> rule1) OR ((((triple5) -> rule3) triple5) -> rule1) OR ((((triple5) -> rule3) ((triple1 triple2) -> rule2)) -> rule1) OR ((((((triple1 triple2) -> rule2)) -> rule3) triple5) -> rule1) OR ((((((triple1 triple2) -> rule2)) -> rule3) ((triple1 triple2) -> rule2)) -> rule1))] Charlie is rough.[(triple5 OR ((triple1 triple2) -> rule2))] Charlie is young.[(triple6 OR ((triple5) -> rule3) OR ((((triple1 triple2) -> rule2)) -> rule3))] Dave is cold.[(triple7)] Dave is green.[(triple8)] Dave is nice.[(triple9 OR ((triple12 triple10) -> rule1) OR ((triple12 ((triple7 triple8) -> rule2)) -> rule1) OR ((((triple10) -> rule3) triple10) -> rule1) OR ((((triple10) -> rule3) ((triple7 triple8) -> rule2)) -> rule1) OR ((((((triple7 triple8) -> rule2)) -> rule3) triple10) -> rule1) OR ((((((triple7 triple8) -> rule2)) -> rule3) ((triple7 triple8) -> rule2)) -> rule1))] Dave is rough.[(triple10 OR ((triple7 triple8) -> rule2))] Dave is round.[(triple11)] Dave is young.[(triple12 OR ((triple10) -> rule3) OR ((((triple7 triple8) -> rule2)) -> rule3))] Gary is cold.[(triple13)] Gary is green.[(triple14)] Gary is round.[(triple15)] @1: Gary is rough.[(((triple13 triple14) -> rule2))] @2: Gary is young.[(((((triple13 triple14) -> rule2)) -> rule3))] @3: Gary is nice.[(((((((triple13 triple14) -> rule2)) -> rule3) ((triple13 triple14) -> rule2)) -> rule1))]
Charlie is cold.
("Charlie" "is" "cold" "+")
triple1
Charlie is green.
("Charlie" "is" "green" "+")
triple2
Charlie is kind.
("Charlie" "is" "kind" "+")
triple3
Charlie is nice.
("Charlie" "is" "nice" "+")
triple4
((triple6 triple5) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
((triple6 ((triple1 triple2) -> (rule2 % int2))) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
((((triple5) -> (rule3 % int2)) triple5) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
((((triple5) -> (rule3 % int3)) ((triple1 triple2) -> (rule2 % int2))) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
((((((triple1 triple2) -> (rule2 % int3))) -> (rule3 % int2)) triple5) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
int3
((((((triple1 triple2) -> (rule2 % int3))) -> (rule3 % int2)) ((triple1 triple2) -> (rule2 % int3))) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
int3
Charlie is rough.
("Charlie" "is" "rough" "+")
triple5
((triple1 triple2) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
triple6
((triple5) -> (rule3 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
((((triple1 triple2) -> (rule2 % int2))) -> (rule3 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
triple7
Dave is green.
("Dave" "is" "green" "+")
triple8
Dave is nice.
("Dave" "is" "nice" "+")
triple9
((triple12 triple10) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
((triple12 ((triple7 triple8) -> (rule2 % int2))) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
((((triple10) -> (rule3 % int2)) triple10) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
((((triple10) -> (rule3 % int3)) ((triple7 triple8) -> (rule2 % int2))) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Dave is young.
("Dave" "is" "young" "+")
int3
((((((triple7 triple8) -> (rule2 % int3))) -> (rule3 % int2)) triple10) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
((((((triple7 triple8) -> (rule2 % int3))) -> (rule3 % int2)) ((triple7 triple8) -> (rule2 % int3))) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
Dave is rough.
("Dave" "is" "rough" "+")
triple10
((triple7 triple8) -> (rule2 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
triple11
Dave is young.
("Dave" "is" "young" "+")
triple12
((triple10) -> (rule3 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
((((triple7 triple8) -> (rule2 % int2))) -> (rule3 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
triple13
Gary is green.
("Gary" "is" "green" "+")
triple14
Gary is round.
("Gary" "is" "round" "+")
triple15
Gary is rough.
("Gary" "is" "rough" "+")
((triple13 triple14) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
((((triple13 triple14) -> (rule2 % int2))) -> (rule3 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
((((((triple13 triple14) -> (rule2 % int3))) -> (rule3 % int2)) ((triple13 triple14) -> (rule2 % int3))) -> (rule1 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3