Erin is big. Erin is white. Fiona is big. Fiona is round. Fiona is smart. Fiona is white. Fiona is young. If something is round then it is red. If Erin is big then Erin is round. All round, red things are big. Green things are big. All red, white things are young. If something is big and smart then it is white. All green things are red. If something is round then it is red.
Erin is big.
("Erin" "is" "big" "+")
Erin is white.
("Erin" "is" "white" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Fiona is young.
("Fiona" "is" "young" "+")
If something is round then it is red.
((("something" "is" "round" "+")) -> ("something" "is" "red" "+"))
If Erin is big then Erin is round.
((("Erin" "is" "big" "+")) -> ("Erin" "is" "round" "+"))
All round, red things are big.
((("something" "is" "round" "+") ("something" "is" "red" "+")) -> ("something" "is" "big" "+"))
Green things are big.
((("something" "is" "green" "+")) -> ("something" "is" "big" "+"))
All red, white things are young.
((("something" "is" "red" "+") ("something" "is" "white" "+")) -> ("something" "is" "young" "+"))
If something is big and smart then it is white.
((("something" "is" "big" "+") ("something" "is" "smart" "+")) -> ("something" "is" "white" "+"))
All green things are red.
((("something" "is" "green" "+")) -> ("something" "is" "red" "+"))
If something is round then it is red.
((("something" "is" "round" "+")) -> ("something" "is" "red" "+"))
Erin is big.
True
1
proof
[(triple1)]
("Erin" "is" "big" "+")
triple1
Fiona is not big.
False
1
inv-proof
[(triple3 OR ((triple4 ((triple4) -> rule1)) -> rule3) OR ((triple4 ((triple4) -> rule8)) -> rule3))]
("Fiona" "is" "big" "-")
triple3
((triple4 ((triple4) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
((triple4 ((triple4) -> (rule8 % int2))) -> (rule3 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is red.
True
2
proof
[(((triple4) -> rule1) OR ((triple4) -> rule8))]
("Fiona" "is" "red" "+")
((triple4) -> (rule1 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
((triple4) -> (rule8 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is not red.
False
2
inv-proof
[(((triple4) -> rule1) OR ((triple4) -> rule8))]
("Fiona" "is" "red" "-")
((triple4) -> (rule1 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
((triple4) -> (rule8 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Erin is red.
True
3
proof
[(((((triple1) -> rule2)) -> rule1) OR ((((triple1) -> rule2)) -> rule8))]
("Erin" "is" "red" "+")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
((((triple1) -> (rule2 % int2))) -> (rule8 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is not red.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule1) OR ((((triple1) -> rule2)) -> rule8))]
("Erin" "is" "red" "-")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
((((triple1) -> (rule2 % int2))) -> (rule8 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is young.
True
5
proof
[(((((((triple1) -> rule2)) -> rule1) triple2) -> rule5) OR ((((((triple1) -> rule2)) -> rule8) triple2) -> rule5))]
("Erin" "is" "young" "+")
((((((triple1) -> (rule2 % int3))) -> (rule1 % int2)) triple2) -> (rule5 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
int3
((((((triple1) -> (rule2 % int3))) -> (rule8 % int2)) triple2) -> (rule5 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
int3
Erin is not young.
False
5
inv-proof
[(((((((triple1) -> rule2)) -> rule1) triple2) -> rule5) OR ((((((triple1) -> rule2)) -> rule8) triple2) -> rule5))]
("Erin" "is" "young" "-")
((((((triple1) -> (rule2 % int3))) -> (rule1 % int2)) triple2) -> (rule5 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
int3
((((((triple1) -> (rule2 % int3))) -> (rule8 % int2)) triple2) -> (rule5 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
int3
Erin is not smart.
Unknown
inv-random
[@0: Erin is smart.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "smart" "-")
Erin is green.
Unknown
random
[@0: Erin is green.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "green" "+")
@0: Erin is big.[(triple1)] Erin is white.[(triple2)] Fiona is big.[(triple3 OR ((triple4 ((triple4) -> rule1)) -> rule3) OR ((triple4 ((triple4) -> rule8)) -> rule3))] Fiona is round.[(triple4)] Fiona is smart.[(triple5)] Fiona is white.[(triple6 OR ((triple3 triple5) -> rule6) OR ((((triple4 ((triple4) -> rule1)) -> rule3) triple5) -> rule6) OR ((((triple4 ((triple4) -> rule8)) -> rule3) triple5) -> rule6))] Fiona is young.[(triple7 OR ((((triple4) -> rule1) triple6) -> rule5) OR ((((triple4) -> rule8) triple6) -> rule5) OR ((((triple4) -> rule1) ((triple3 triple5) -> rule6)) -> rule5) OR ((((triple4) -> rule8) ((triple3 triple5) -> rule6)) -> rule5) OR ((((triple4) -> rule1) ((((triple4 ((triple4) -> rule1)) -> rule3) triple5) -> rule6)) -> rule5) OR ((((triple4) -> rule1) ((((triple4 ((triple4) -> rule8)) -> rule3) triple5) -> rule6)) -> rule5) OR ((((triple4) -> rule8) ((((triple4 ((triple4) -> rule1)) -> rule3) triple5) -> rule6)) -> rule5) OR ((((triple4) -> rule8) ((((triple4 ((triple4) -> rule8)) -> rule3) triple5) -> rule6)) -> rule5))] @1: Erin is round.[(((triple1) -> rule2))] Fiona is red.[(((triple4) -> rule1) OR ((triple4) -> rule8))] @2: Erin is red.[(((((triple1) -> rule2)) -> rule1) OR ((((triple1) -> rule2)) -> rule8))] @3: Erin is young.[(((((((triple1) -> rule2)) -> rule1) triple2) -> rule5) OR ((((((triple1) -> rule2)) -> rule8) triple2) -> rule5))]
Erin is big.
("Erin" "is" "big" "+")
triple1
Erin is white.
("Erin" "is" "white" "+")
triple2
Fiona is big.
("Fiona" "is" "big" "+")
triple3
((triple4 ((triple4) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
((triple4 ((triple4) -> (rule8 % int2))) -> (rule3 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
triple4
Fiona is smart.
("Fiona" "is" "smart" "+")
triple5
Fiona is white.
("Fiona" "is" "white" "+")
triple6
((triple3 triple5) -> (rule6 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
((((triple4 ((triple4) -> (rule1 % int3))) -> (rule3 % int2)) triple5) -> (rule6 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is red.
("Fiona" "is" "red" "+")
int3
((((triple4 ((triple4) -> (rule8 % int3))) -> (rule3 % int2)) triple5) -> (rule6 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is red.
("Fiona" "is" "red" "+")
int3
Fiona is young.
("Fiona" "is" "young" "+")
triple7
((((triple4) -> (rule1 % int2)) triple6) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
((((triple4) -> (rule8 % int2)) triple6) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
((((triple4) -> (rule1 % int3)) ((triple3 triple5) -> (rule6 % int2))) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is red.
("Fiona" "is" "red" "+")
int3
((((triple4) -> (rule8 % int3)) ((triple3 triple5) -> (rule6 % int2))) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is red.
("Fiona" "is" "red" "+")
int3
((((triple4) -> (rule1 % int4)) ((((triple4 ((triple4) -> (rule1 % int4))) -> (rule3 % int3)) triple5) -> (rule6 % int2))) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is red.
("Fiona" "is" "red" "+")
int4
((((triple4) -> (rule1 % int4)) ((((triple4 ((triple4) -> (rule8 % int4))) -> (rule3 % int3)) triple5) -> (rule6 % int2))) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is red.
("Fiona" "is" "red" "+")
int4
((((triple4) -> (rule8 % int4)) ((((triple4 ((triple4) -> (rule1 % int4))) -> (rule3 % int3)) triple5) -> (rule6 % int2))) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is red.
("Fiona" "is" "red" "+")
int4
((((triple4) -> (rule8 % int4)) ((((triple4 ((triple4) -> (rule8 % int4))) -> (rule3 % int3)) triple5) -> (rule6 % int2))) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is red.
("Fiona" "is" "red" "+")
int4
Erin is round.
("Erin" "is" "round" "+")
((triple1) -> (rule2 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
((triple4) -> (rule1 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
((triple4) -> (rule8 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
((((triple1) -> (rule2 % int2))) -> (rule8 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
((((((triple1) -> (rule2 % int3))) -> (rule1 % int2)) triple2) -> (rule5 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
int3
((((((triple1) -> (rule2 % int3))) -> (rule8 % int2)) triple2) -> (rule5 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
int3