Charlie is nice. Charlie is young. Harry is blue. Harry is cold. Harry is green. Harry is nice. Harry is red. All young, blue things are nice. All nice, green things are cold. Young things are cold. If Charlie is white then Charlie is cold. All young things are nice. If something is blue and red then it is young.
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is green.
("Harry" "is" "green" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is red.
("Harry" "is" "red" "+")
All young, blue things are nice.
((("something" "is" "young" "+") ("something" "is" "blue" "+")) -> ("something" "is" "nice" "+"))
All nice, green things are cold.
((("something" "is" "nice" "+") ("something" "is" "green" "+")) -> ("something" "is" "cold" "+"))
Young things are cold.
((("something" "is" "young" "+")) -> ("something" "is" "cold" "+"))
If Charlie is white then Charlie is cold.
((("Charlie" "is" "white" "+")) -> ("Charlie" "is" "cold" "+"))
All young things are nice.
((("something" "is" "young" "+")) -> ("something" "is" "nice" "+"))
If something is blue and red then it is young.
((("something" "is" "blue" "+") ("something" "is" "red" "+")) -> ("something" "is" "young" "+"))
Charlie is nice.
True
1
proof
[(triple1 OR ((triple2) -> rule5))]
("Charlie" "is" "nice" "+")
triple1
((triple2) -> (rule5 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is not nice.
False
1
inv-proof
[(triple1 OR ((triple2) -> rule5))]
("Charlie" "is" "nice" "-")
triple1
((triple2) -> (rule5 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Harry is not white.
Unknown
inv-random
[@0: Harry is white.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "white" "-")
Charlie is white.
Unknown
random
[@0: Charlie is white.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "white" "+")
@0: Charlie is nice.[(triple1 OR ((triple2) -> rule5))] Charlie is young.[(triple2)] Harry is blue.[(triple3)] Harry is cold.[(triple4 OR ((triple6 triple5) -> rule2) OR ((((triple3 triple7) -> rule6)) -> rule3) OR ((((((triple3 triple7) -> rule6)) -> rule5) triple5) -> rule2) OR ((((((triple3 triple7) -> rule6) triple3) -> rule1) triple5) -> rule2))] Harry is green.[(triple5)] Harry is nice.[(triple6 OR ((((triple3 triple7) -> rule6)) -> rule5) OR ((((triple3 triple7) -> rule6) triple3) -> rule1))] Harry is red.[(triple7)] @1: Charlie is cold.[(((triple2) -> rule3))] Harry is young.[(((triple3 triple7) -> rule6))]
Charlie is nice.
("Charlie" "is" "nice" "+")
triple1
((triple2) -> (rule5 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
triple2
Harry is blue.
("Harry" "is" "blue" "+")
triple3
Harry is cold.
("Harry" "is" "cold" "+")
triple4
((triple6 triple5) -> (rule2 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
((((triple3 triple7) -> (rule6 % int2))) -> (rule3 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
((((((triple3 triple7) -> (rule6 % int3))) -> (rule5 % int2)) triple5) -> (rule2 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is young.
("Harry" "is" "young" "+")
int3
((((((triple3 triple7) -> (rule6 % int3)) triple3) -> (rule1 % int2)) triple5) -> (rule2 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is young.
("Harry" "is" "young" "+")
int3
Harry is green.
("Harry" "is" "green" "+")
triple5
Harry is nice.
("Harry" "is" "nice" "+")
triple6
((((triple3 triple7) -> (rule6 % int2))) -> (rule5 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
((((triple3 triple7) -> (rule6 % int2)) triple3) -> (rule1 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
triple7
Charlie is cold.
("Charlie" "is" "cold" "+")
((triple2) -> (rule3 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
((triple3 triple7) -> (rule6 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1