Anne is blue. Anne is furry. Anne is kind. Anne is red. Charlie is blue. Charlie is furry. Charlie is kind. Charlie is nice. Charlie is young. Erin is kind. Erin is nice. Fiona is blue. Fiona is furry. Fiona is kind. Fiona is nice. Fiona is quiet. Kind things are blue. Kind, red things are blue.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is red.
("Anne" "is" "red" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Kind things are blue.
((("something" "is" "kind" "+")) -> ("something" "is" "blue" "+"))
Kind, red things are blue.
((("something" "is" "kind" "+") ("something" "is" "red" "+")) -> ("something" "is" "blue" "+"))
Anne is blue.
True
1
proof
[(triple1 OR ((triple3) -> rule1) OR ((triple3 triple4) -> rule2))]
("Anne" "is" "blue" "+")
triple1
((triple3) -> (rule1 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
((triple3 triple4) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is not blue.
False
1
inv-proof
[(triple1 OR ((triple3) -> rule1) OR ((triple3 triple4) -> rule2))]
("Anne" "is" "blue" "-")
triple1
((triple3) -> (rule1 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
((triple3 triple4) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Charlie is not red.
Unknown
inv-random
[@0: Charlie is red.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "red" "-")
Anne is quiet.
Unknown
random
[@0: Anne is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "quiet" "+")
@0: Anne is blue.[(triple1 OR ((triple3) -> rule1) OR ((triple3 triple4) -> rule2))] Anne is furry.[(triple2)] Anne is kind.[(triple3)] Anne is red.[(triple4)] Charlie is blue.[(triple5 OR ((triple7) -> rule1))] Charlie is furry.[(triple6)] Charlie is kind.[(triple7)] Charlie is nice.[(triple8)] Charlie is young.[(triple9)] Erin is kind.[(triple10)] Erin is nice.[(triple11)] Fiona is blue.[(triple12 OR ((triple14) -> rule1))] Fiona is furry.[(triple13)] Fiona is kind.[(triple14)] Fiona is nice.[(triple15)] Fiona is quiet.[(triple16)] @1: Erin is blue.[(((triple10) -> rule1))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
((triple3) -> (rule1 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
((triple3 triple4) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
triple2
Anne is kind.
("Anne" "is" "kind" "+")
triple3
Anne is red.
("Anne" "is" "red" "+")
triple4
Charlie is blue.
("Charlie" "is" "blue" "+")
triple5
((triple7) -> (rule1 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
triple6
Charlie is kind.
("Charlie" "is" "kind" "+")
triple7
Charlie is nice.
("Charlie" "is" "nice" "+")
triple8
Charlie is young.
("Charlie" "is" "young" "+")
triple9
Erin is kind.
("Erin" "is" "kind" "+")
triple10
Erin is nice.
("Erin" "is" "nice" "+")
triple11
Fiona is blue.
("Fiona" "is" "blue" "+")
triple12
((triple14) -> (rule1 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
triple13
Fiona is kind.
("Fiona" "is" "kind" "+")
triple14
Fiona is nice.
("Fiona" "is" "nice" "+")
triple15
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple16
Erin is blue.
("Erin" "is" "blue" "+")
((triple10) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1