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