Dave is blue. Dave is not furry. Dave is smart. Dave is young. Fiona is big. Fiona is blue. Fiona is furry. Fiona is kind. Fiona is white. Fiona is young. Young people are white. Furry people are kind. If someone is big and not white then they are blue. All kind, white people are blue. All blue, kind people are big. If someone is white and not furry then they are big.
Dave is blue.
("Dave" "is" "blue" "+")
Dave is not furry.
("Dave" "is" "furry" "-")
Dave is smart.
("Dave" "is" "smart" "+")
Dave is young.
("Dave" "is" "young" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Young people are white.
((("someone" "is" "young" "+")) -> ("someone" "is" "white" "+"))
Furry people are kind.
((("someone" "is" "furry" "+")) -> ("someone" "is" "kind" "+"))
If someone is big and not white then they are blue.
((("someone" "is" "big" "+") ("someone" "is" "white" "~")) -> ("someone" "is" "blue" "+"))
All kind, white people are blue.
((("someone" "is" "kind" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "blue" "+"))
All blue, kind people are big.
((("someone" "is" "blue" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "big" "+"))
If someone is white and not furry then they are big.
((("someone" "is" "white" "+") ("someone" "is" "furry" "~")) -> ("someone" "is" "big" "+"))
Dave is blue.
True
1
proof
[(triple1)]
("Dave" "is" "blue" "+")
triple1
Fiona is not big.
False
1
inv-proof
[(triple5 OR ((triple6 triple8) -> rule5) OR ((triple6 ((triple7) -> rule2)) -> rule5) OR ((((triple8 triple9) -> rule4) triple8) -> rule5) OR ((((triple8 triple9) -> rule4) ((triple7) -> rule2)) -> rule5) OR ((((triple8 ((triple10) -> rule1)) -> rule4) triple8) -> rule5) OR ((((((triple7) -> rule2) triple9) -> rule4) triple8) -> rule5) OR ((((triple8 ((triple10) -> rule1)) -> rule4) ((triple7) -> rule2)) -> rule5) OR ((((((triple7) -> rule2) triple9) -> rule4) ((triple7) -> rule2)) -> rule5) OR ((((((triple7) -> rule2) ((triple10) -> rule1)) -> rule4) triple8) -> rule5) OR ((((((triple7) -> rule2) ((triple10) -> rule1)) -> rule4) ((triple7) -> rule2)) -> rule5))]
("Fiona" "is" "big" "-")
triple5
((triple6 triple8) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
((triple6 ((triple7) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((triple8 triple9) -> (rule4 % int2)) triple8) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
((((triple8 triple9) -> (rule4 % int3)) ((triple7) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
((((triple8 ((triple10) -> (rule1 % int3))) -> (rule4 % int2)) triple8) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
((((((triple7) -> (rule2 % int3)) triple9) -> (rule4 % int2)) triple8) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
((((triple8 ((triple10) -> (rule1 % int4))) -> (rule4 % int3)) ((triple7) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
((((((triple7) -> (rule2 % int3)) triple9) -> (rule4 % int2)) ((triple7) -> (rule2 % int3))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
((((((triple7) -> (rule2 % int4)) ((triple10) -> (rule1 % int3))) -> (rule4 % int2)) triple8) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is kind.
("Fiona" "is" "kind" "+")
int4
((((((triple7) -> (rule2 % int4)) ((triple10) -> (rule1 % int3))) -> (rule4 % int2)) ((triple7) -> (rule2 % int4))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is kind.
("Fiona" "is" "kind" "+")
int4
Dave is white.
True
2
proof
[(((triple4) -> rule1))]
("Dave" "is" "white" "+")
((triple4) -> (rule1 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Dave is not white.
False
2
inv-proof
[(((triple4) -> rule1))]
("Dave" "is" "white" "-")
((triple4) -> (rule1 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Dave is not kind.
Unknown
inv-rconc
[@1: Dave is kind.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Dave" "is" "kind" "-")
Fiona is smart.
Unknown
random
[@0: Fiona is smart.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "smart" "+")
@0: Dave is blue.[(triple1)] Dave is not furry.[(triple2)] Dave is smart.[(triple3)] Dave is young.[(triple4)] Fiona is big.[(triple5 OR ((triple6 triple8) -> rule5) OR ((triple6 ((triple7) -> rule2)) -> rule5) OR ((((triple8 triple9) -> rule4) triple8) -> rule5) OR ((((triple8 triple9) -> rule4) ((triple7) -> rule2)) -> rule5) OR ((((triple8 ((triple10) -> rule1)) -> rule4) triple8) -> rule5) OR ((((((triple7) -> rule2) triple9) -> rule4) triple8) -> rule5) OR ((((triple8 ((triple10) -> rule1)) -> rule4) ((triple7) -> rule2)) -> rule5) OR ((((((triple7) -> rule2) triple9) -> rule4) ((triple7) -> rule2)) -> rule5) OR ((((((triple7) -> rule2) ((triple10) -> rule1)) -> rule4) triple8) -> rule5) OR ((((((triple7) -> rule2) ((triple10) -> rule1)) -> rule4) ((triple7) -> rule2)) -> rule5))] Fiona is blue.[(triple6 OR ((triple8 triple9) -> rule4) OR ((triple8 ((triple10) -> rule1)) -> rule4) OR ((((triple7) -> rule2) triple9) -> rule4) OR ((((triple7) -> rule2) ((triple10) -> rule1)) -> rule4))] Fiona is furry.[(triple7)] Fiona is kind.[(triple8 OR ((triple7) -> rule2))] Fiona is white.[(triple9 OR ((triple10) -> rule1))] Fiona is young.[(triple10)] @1: Dave is white.[(((triple4) -> rule1))] @2: Dave is big.[(((((triple4) -> rule1) triple2) -> rule6))]
Dave is blue.
("Dave" "is" "blue" "+")
triple1
Dave is not furry.
("Dave" "is" "furry" "-")
triple2
Dave is smart.
("Dave" "is" "smart" "+")
triple3
Dave is young.
("Dave" "is" "young" "+")
triple4
Fiona is big.
("Fiona" "is" "big" "+")
triple5
((triple6 triple8) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
((triple6 ((triple7) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((triple8 triple9) -> (rule4 % int2)) triple8) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
((((triple8 triple9) -> (rule4 % int3)) ((triple7) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
((((triple8 ((triple10) -> (rule1 % int3))) -> (rule4 % int2)) triple8) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
((((((triple7) -> (rule2 % int3)) triple9) -> (rule4 % int2)) triple8) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
((((triple8 ((triple10) -> (rule1 % int4))) -> (rule4 % int3)) ((triple7) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
((((((triple7) -> (rule2 % int3)) triple9) -> (rule4 % int2)) ((triple7) -> (rule2 % int3))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
((((((triple7) -> (rule2 % int4)) ((triple10) -> (rule1 % int3))) -> (rule4 % int2)) triple8) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is kind.
("Fiona" "is" "kind" "+")
int4
((((((triple7) -> (rule2 % int4)) ((triple10) -> (rule1 % int3))) -> (rule4 % int2)) ((triple7) -> (rule2 % int4))) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is kind.
("Fiona" "is" "kind" "+")
int4
Fiona is blue.
("Fiona" "is" "blue" "+")
triple6
((triple8 triple9) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
((triple8 ((triple10) -> (rule1 % int2))) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
((((triple7) -> (rule2 % int2)) triple9) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((triple7) -> (rule2 % int3)) ((triple10) -> (rule1 % int2))) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
triple7
Fiona is kind.
("Fiona" "is" "kind" "+")
triple8
((triple7) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
triple9
((triple10) -> (rule1 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
triple10
Dave is white.
("Dave" "is" "white" "+")
((triple4) -> (rule1 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
((((triple4) -> (rule1 % int2)) triple2) -> (rule6 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2