Charlie is kind. Charlie is rough. Charlie is smart. Fiona is green. Fiona is kind. Fiona is rough. Fiona is round. All furry things are green. If something is cold then it is kind. If something is furry and cold then it is green. Rough things are kind. If something is green and kind then it is round. All rough things are furry.
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is round.
("Fiona" "is" "round" "+")
All furry things are green.
((("something" "is" "furry" "+")) -> ("something" "is" "green" "+"))
If something is cold then it is kind.
((("something" "is" "cold" "+")) -> ("something" "is" "kind" "+"))
If something is furry and cold then it is green.
((("something" "is" "furry" "+") ("something" "is" "cold" "+")) -> ("something" "is" "green" "+"))
Rough things are kind.
((("something" "is" "rough" "+")) -> ("something" "is" "kind" "+"))
If something is green and kind then it is round.
((("something" "is" "green" "+") ("something" "is" "kind" "+")) -> ("something" "is" "round" "+"))
All rough things are furry.
((("something" "is" "rough" "+")) -> ("something" "is" "furry" "+"))
Charlie is smart.
True
1
proof
[(triple3)]
("Charlie" "is" "smart" "+")
triple3
Fiona is not green.
False
1
inv-proof
[(triple4 OR ((((triple6) -> rule6)) -> rule1))]
("Fiona" "is" "green" "-")
triple4
((((triple6) -> (rule6 % int2))) -> (rule1 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is furry.
True
2
proof
[(((triple6) -> rule6))]
("Fiona" "is" "furry" "+")
((triple6) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is not furry.
False
2
inv-proof
[(((triple6) -> rule6))]
("Fiona" "is" "furry" "-")
((triple6) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Charlie is green.
True
3
proof
[(((((triple2) -> rule6)) -> rule1))]
("Charlie" "is" "green" "+")
((((triple2) -> (rule6 % int2))) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is not green.
False
3
inv-proof
[(((((triple2) -> rule6)) -> rule1))]
("Charlie" "is" "green" "-")
((((triple2) -> (rule6 % int2))) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is round.
True
5
proof
[(((((((triple2) -> rule6)) -> rule1) triple1) -> rule5) OR ((((((triple2) -> rule6)) -> rule1) ((triple2) -> rule4)) -> rule5))]
("Charlie" "is" "round" "+")
((((((triple2) -> (rule6 % int3))) -> (rule1 % int2)) triple1) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
int3
((((((triple2) -> (rule6 % int4))) -> (rule1 % int3)) ((triple2) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
int4
Charlie is not round.
False
5
inv-proof
[(((((((triple2) -> rule6)) -> rule1) triple1) -> rule5) OR ((((((triple2) -> rule6)) -> rule1) ((triple2) -> rule4)) -> rule5))]
("Charlie" "is" "round" "-")
((((((triple2) -> (rule6 % int3))) -> (rule1 % int2)) triple1) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
int3
((((((triple2) -> (rule6 % int4))) -> (rule1 % int3)) ((triple2) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
int4
Charlie is not cold.
Unknown
inv-random
[@0: Charlie is cold.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "cold" "-")
Fiona is cold.
Unknown
random
[@0: Fiona is cold.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "cold" "+")
@0: Charlie is kind.[(triple1 OR ((triple2) -> rule4))] Charlie is rough.[(triple2)] Charlie is smart.[(triple3)] Fiona is green.[(triple4 OR ((((triple6) -> rule6)) -> rule1))] Fiona is kind.[(triple5 OR ((triple6) -> rule4))] Fiona is rough.[(triple6)] Fiona is round.[(triple7 OR ((triple4 triple5) -> rule5) OR ((triple4 ((triple6) -> rule4)) -> rule5) OR ((((((triple6) -> rule6)) -> rule1) triple5) -> rule5) OR ((((((triple6) -> rule6)) -> rule1) ((triple6) -> rule4)) -> rule5))] @1: Charlie is furry.[(((triple2) -> rule6))] Fiona is furry.[(((triple6) -> rule6))] @2: Charlie is green.[(((((triple2) -> rule6)) -> rule1))] @3: Charlie is round.[(((((((triple2) -> rule6)) -> rule1) triple1) -> rule5) OR ((((((triple2) -> rule6)) -> rule1) ((triple2) -> rule4)) -> rule5))]
Charlie is kind.
("Charlie" "is" "kind" "+")
triple1
((triple2) -> (rule4 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
triple2
Charlie is smart.
("Charlie" "is" "smart" "+")
triple3
Fiona is green.
("Fiona" "is" "green" "+")
triple4
((((triple6) -> (rule6 % int2))) -> (rule1 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
triple5
((triple6) -> (rule4 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
triple6
Fiona is round.
("Fiona" "is" "round" "+")
triple7
((triple4 triple5) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((triple4 ((triple6) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((((triple6) -> (rule6 % int3))) -> (rule1 % int2)) triple5) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
((((((triple6) -> (rule6 % int4))) -> (rule1 % int3)) ((triple6) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
Charlie is furry.
("Charlie" "is" "furry" "+")
((triple2) -> (rule6 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple6) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
((((triple2) -> (rule6 % int2))) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
((((((triple2) -> (rule6 % int3))) -> (rule1 % int2)) triple1) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
int3
((((((triple2) -> (rule6 % int4))) -> (rule1 % int3)) ((triple2) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
int4