Dave is big. Dave is blue. Dave is rough. Dave is white. Fiona is blue. Fiona is white. Fiona is young. Big people are white. White people are young. If someone is blue then they are furry. All young people are white. All furry people are nice. If someone is blue then they are furry.
Dave is big.
("Dave" "is" "big" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Dave is white.
("Dave" "is" "white" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Big people are white.
((("someone" "is" "big" "+")) -> ("someone" "is" "white" "+"))
White people are young.
((("someone" "is" "white" "+")) -> ("someone" "is" "young" "+"))
If someone is blue then they are furry.
((("someone" "is" "blue" "+")) -> ("someone" "is" "furry" "+"))
All young people are white.
((("someone" "is" "young" "+")) -> ("someone" "is" "white" "+"))
All furry people are nice.
((("someone" "is" "furry" "+")) -> ("someone" "is" "nice" "+"))
If someone is blue then they are furry.
((("someone" "is" "blue" "+")) -> ("someone" "is" "furry" "+"))
Dave is white.
True
1
proof
[(triple4 OR ((triple1) -> rule1))]
("Dave" "is" "white" "+")
triple4
((triple1) -> (rule1 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Fiona is not young.
False
1
inv-proof
[(triple7 OR ((triple6) -> rule2))]
("Fiona" "is" "young" "-")
triple7
((triple6) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is furry.
True
2
proof
[(((triple5) -> rule3) OR ((triple5) -> rule6))]
("Fiona" "is" "furry" "+")
((triple5) -> (rule3 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((triple5) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is not furry.
False
2
inv-proof
[(((triple5) -> rule3) OR ((triple5) -> rule6))]
("Fiona" "is" "furry" "-")
((triple5) -> (rule3 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((triple5) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Dave is nice.
True
3
proof
[(((((triple2) -> rule3)) -> rule5) OR ((((triple2) -> rule6)) -> rule5))]
("Dave" "is" "nice" "+")
((((triple2) -> (rule3 % int2))) -> (rule5 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
((((triple2) -> (rule6 % int2))) -> (rule5 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Fiona is not nice.
False
3
inv-proof
[(((((triple5) -> rule3)) -> rule5) OR ((((triple5) -> rule6)) -> rule5))]
("Fiona" "is" "nice" "-")
((((triple5) -> (rule3 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
((((triple5) -> (rule6 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is not big.
Unknown
inv-random
[@0: Fiona is big.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "big" "-")
Fiona is rough.
Unknown
random
[@0: Fiona is rough.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "rough" "+")
@0: Dave is big.[(triple1)] Dave is blue.[(triple2)] Dave is rough.[(triple3)] Dave is white.[(triple4 OR ((triple1) -> rule1))] Fiona is blue.[(triple5)] Fiona is white.[(triple6 OR ((triple7) -> rule4))] Fiona is young.[(triple7 OR ((triple6) -> rule2))] @1: Dave is furry.[(((triple2) -> rule3) OR ((triple2) -> rule6))] Dave is young.[(((triple4) -> rule2) OR ((((triple1) -> rule1)) -> rule2))] Fiona is furry.[(((triple5) -> rule3) OR ((triple5) -> rule6))] @2: Dave is nice.[(((((triple2) -> rule3)) -> rule5) OR ((((triple2) -> rule6)) -> rule5))] Fiona is nice.[(((((triple5) -> rule3)) -> rule5) OR ((((triple5) -> rule6)) -> rule5))]
Dave is big.
("Dave" "is" "big" "+")
triple1
Dave is blue.
("Dave" "is" "blue" "+")
triple2
Dave is rough.
("Dave" "is" "rough" "+")
triple3
Dave is white.
("Dave" "is" "white" "+")
triple4
((triple1) -> (rule1 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
triple5
Fiona is white.
("Fiona" "is" "white" "+")
triple6
((triple7) -> (rule4 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
triple7
((triple6) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
((triple2) -> (rule3 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
((triple2) -> (rule6 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
((triple4) -> (rule2 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
((((triple1) -> (rule1 % int2))) -> (rule2 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple5) -> (rule3 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((triple5) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
((((triple2) -> (rule3 % int2))) -> (rule5 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
((((triple2) -> (rule6 % int2))) -> (rule5 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
((((triple5) -> (rule3 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
((((triple5) -> (rule6 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2