Anne is big. Anne is nice. Anne is red. Anne is young. Charlie is big. Charlie is nice. Fiona is white. Harry is big. Harry is furry. Harry is white. Harry is young. White people are furry. If someone is furry then they are round. If Fiona is nice and Fiona is red then Fiona is white. Red, round people are young. Round people are nice. If Fiona is nice and Fiona is furry then Fiona is round. All nice, furry people are round. Nice, white people are red.
Anne is big.
("Anne" "is" "big" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Anne is red.
("Anne" "is" "red" "+")
Anne is young.
("Anne" "is" "young" "+")
Charlie is big.
("Charlie" "is" "big" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is white.
("Harry" "is" "white" "+")
Harry is young.
("Harry" "is" "young" "+")
White people are furry.
((("someone" "is" "white" "+")) -> ("someone" "is" "furry" "+"))
If someone is furry then they are round.
((("someone" "is" "furry" "+")) -> ("someone" "is" "round" "+"))
If Fiona is nice and Fiona is red then Fiona is white.
((("Fiona" "is" "nice" "+") ("Fiona" "is" "red" "+")) -> ("Fiona" "is" "white" "+"))
Red, round people are young.
((("someone" "is" "red" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "young" "+"))
Round people are nice.
((("someone" "is" "round" "+")) -> ("someone" "is" "nice" "+"))
If Fiona is nice and Fiona is furry then Fiona is round.
((("Fiona" "is" "nice" "+") ("Fiona" "is" "furry" "+")) -> ("Fiona" "is" "round" "+"))
All nice, furry people are round.
((("someone" "is" "nice" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "round" "+"))
Nice, white people are red.
((("someone" "is" "nice" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "red" "+"))
Charlie is big.
True
1
proof
[(triple5)]
("Charlie" "is" "big" "+")
triple5
Harry is not big.
False
1
inv-proof
[(triple8)]
("Harry" "is" "big" "-")
triple8
Harry is round.
True
2
proof
[(((triple9) -> rule2) OR ((((triple10) -> rule1)) -> rule2))]
("Harry" "is" "round" "+")
((triple9) -> (rule2 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
((((triple10) -> (rule1 % int2))) -> (rule2 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Fiona is not furry.
False
2
inv-proof
[(((triple7) -> rule1))]
("Fiona" "is" "furry" "-")
((triple7) -> (rule1 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is round.
True
3
proof
[(((((triple7) -> rule1)) -> rule2))]
("Fiona" "is" "round" "+")
((((triple7) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Harry is not nice.
False
3
inv-proof
[(((((triple9) -> rule2)) -> rule5) OR ((((((triple10) -> rule1)) -> rule2)) -> rule5))]
("Harry" "is" "nice" "-")
((((triple9) -> (rule2 % int2))) -> (rule5 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
((((((triple10) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is furry.
("Harry" "is" "furry" "+")
int3
Fiona is nice.
True
4
proof
[(((((((triple7) -> rule1)) -> rule2)) -> rule5))]
("Fiona" "is" "nice" "+")
((((((triple7) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
Fiona is not nice.
False
4
inv-proof
[(((((((triple7) -> rule1)) -> rule2)) -> rule5))]
("Fiona" "is" "nice" "-")
((((((triple7) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
Fiona is red.
True
6
proof
[(((((((((triple7) -> rule1)) -> rule2)) -> rule5) triple7) -> rule8))]
("Fiona" "is" "red" "+")
((((((((triple7) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule5 % int2)) triple7) -> (rule8 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
Fiona is not red.
False
6
inv-proof
[(((((((((triple7) -> rule1)) -> rule2)) -> rule5) triple7) -> rule8))]
("Fiona" "is" "red" "-")
((((((((triple7) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule5 % int2)) triple7) -> (rule8 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
Fiona is young.
True
10
proof
[(((((((((((triple7) -> rule1)) -> rule2)) -> rule5) triple7) -> rule8) ((((triple7) -> rule1)) -> rule2)) -> rule4))]
("Fiona" "is" "young" "+")
((((((((((triple7) -> (rule1 % int5))) -> (rule2 % int4))) -> (rule5 % int3)) triple7) -> (rule8 % int2)) ((((triple7) -> (rule1 % int5))) -> (rule2 % int4))) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
int4
Fiona is furry.
("Fiona" "is" "furry" "+")
int5
Fiona is not young.
False
10
inv-proof
[(((((((((((triple7) -> rule1)) -> rule2)) -> rule5) triple7) -> rule8) ((((triple7) -> rule1)) -> rule2)) -> rule4))]
("Fiona" "is" "young" "-")
((((((((((triple7) -> (rule1 % int5))) -> (rule2 % int4))) -> (rule5 % int3)) triple7) -> (rule8 % int2)) ((((triple7) -> (rule1 % int5))) -> (rule2 % int4))) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
int4
Fiona is furry.
("Fiona" "is" "furry" "+")
int5
Charlie is not furry.
Unknown
inv-rconc
[@1: Charlie is furry.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Charlie" "is" "furry" "-")
Charlie is red.
Unknown
rconc
[@1: Charlie is red.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Charlie" "is" "red" "+")
Charlie is not young.
Unknown
inv-rconc
[@2: Charlie is young.[CWA. Example of deepest failure = (rule4 <- rule8 <- FAIL)]]
("Charlie" "is" "young" "-")
Charlie is round.
Unknown
rconc
[@2: Charlie is round.[CWA. Example of deepest failure = (rule2 <- rule1 <- FAIL)]]
("Charlie" "is" "round" "+")
Anne is not round.
Unknown
inv-rconc
[@2: Anne is round.[CWA. Example of deepest failure = (rule2 <- rule1 <- FAIL)]]
("Anne" "is" "round" "-")
Anne is furry.
Unknown
rconc
[@1: Anne is furry.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Anne" "is" "furry" "+")
Fiona is not big.
Unknown
inv-random
[@0: Fiona is big.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "big" "-")
Charlie is white.
Unknown
random
[@0: Charlie is white.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "white" "+")
@0: Anne is big.[(triple1)] Anne is nice.[(triple2)] Anne is red.[(triple3)] Anne is young.[(triple4)] Charlie is big.[(triple5)] Charlie is nice.[(triple6)] Fiona is white.[(triple7)] Harry is big.[(triple8)] Harry is furry.[(triple9 OR ((triple10) -> rule1))] Harry is white.[(triple10)] Harry is young.[(triple11 OR ((((((((triple9) -> rule2)) -> rule5) triple10) -> rule8) ((triple9) -> rule2)) -> rule4) OR ((((((((triple9) -> rule2)) -> rule5) triple10) -> rule8) ((((triple10) -> rule1)) -> rule2)) -> rule4) OR ((((((((((triple10) -> rule1)) -> rule2)) -> rule5) triple10) -> rule8) ((triple9) -> rule2)) -> rule4) OR ((((((((((triple10) -> rule1)) -> rule2)) -> rule5) triple10) -> rule8) ((((triple10) -> rule1)) -> rule2)) -> rule4))] @1: Fiona is furry.[(((triple7) -> rule1))] Harry is round.[(((triple9) -> rule2) OR ((((triple10) -> rule1)) -> rule2))] @2: Fiona is round.[(((((triple7) -> rule1)) -> rule2))] Harry is nice.[(((((triple9) -> rule2)) -> rule5) OR ((((((triple10) -> rule1)) -> rule2)) -> rule5))] @3: Fiona is nice.[(((((((triple7) -> rule1)) -> rule2)) -> rule5))] Harry is red.[(((((((triple9) -> rule2)) -> rule5) triple10) -> rule8) OR ((((((((triple10) -> rule1)) -> rule2)) -> rule5) triple10) -> rule8))] @4: Fiona is red.[(((((((((triple7) -> rule1)) -> rule2)) -> rule5) triple7) -> rule8))] @5: Fiona is young.[(((((((((((triple7) -> rule1)) -> rule2)) -> rule5) triple7) -> rule8) ((((triple7) -> rule1)) -> rule2)) -> rule4))]
Anne is big.
("Anne" "is" "big" "+")
triple1
Anne is nice.
("Anne" "is" "nice" "+")
triple2
Anne is red.
("Anne" "is" "red" "+")
triple3
Anne is young.
("Anne" "is" "young" "+")
triple4
Charlie is big.
("Charlie" "is" "big" "+")
triple5
Charlie is nice.
("Charlie" "is" "nice" "+")
triple6
Fiona is white.
("Fiona" "is" "white" "+")
triple7
Harry is big.
("Harry" "is" "big" "+")
triple8
Harry is furry.
("Harry" "is" "furry" "+")
triple9
((triple10) -> (rule1 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
triple10
Harry is young.
("Harry" "is" "young" "+")
triple11
((((((((triple9) -> (rule2 % int4))) -> (rule5 % int3)) triple10) -> (rule8 % int2)) ((triple9) -> (rule2 % int4))) -> (rule4 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is nice.
("Harry" "is" "nice" "+")
int3
Harry is round.
("Harry" "is" "round" "+")
int4
((((((((triple9) -> (rule2 % int5))) -> (rule5 % int4)) triple10) -> (rule8 % int3)) ((((triple10) -> (rule1 % int2))) -> (rule2 % int5))) -> (rule4 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
int3
Harry is nice.
("Harry" "is" "nice" "+")
int4
Harry is round.
("Harry" "is" "round" "+")
int5
((((((((((triple10) -> (rule1 % int5))) -> (rule2 % int4))) -> (rule5 % int3)) triple10) -> (rule8 % int2)) ((triple9) -> (rule2 % int4))) -> (rule4 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is nice.
("Harry" "is" "nice" "+")
int3
Harry is round.
("Harry" "is" "round" "+")
int4
Harry is furry.
("Harry" "is" "furry" "+")
int5
((((((((((triple10) -> (rule1 % int5))) -> (rule2 % int4))) -> (rule5 % int3)) triple10) -> (rule8 % int2)) ((((triple10) -> (rule1 % int5))) -> (rule2 % int4))) -> (rule4 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is nice.
("Harry" "is" "nice" "+")
int3
Harry is round.
("Harry" "is" "round" "+")
int4
Harry is furry.
("Harry" "is" "furry" "+")
int5
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple7) -> (rule1 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
((triple9) -> (rule2 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
((((triple10) -> (rule1 % int2))) -> (rule2 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
((((triple7) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Harry is nice.
("Harry" "is" "nice" "+")
((((triple9) -> (rule2 % int2))) -> (rule5 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
((((((triple10) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is furry.
("Harry" "is" "furry" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
((((((triple7) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
Harry is red.
("Harry" "is" "red" "+")
((((((triple9) -> (rule2 % int3))) -> (rule5 % int2)) triple10) -> (rule8 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
((((((((triple10) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule5 % int2)) triple10) -> (rule8 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
Harry is furry.
("Harry" "is" "furry" "+")
int4
Fiona is red.
("Fiona" "is" "red" "+")
((((((((triple7) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule5 % int2)) triple7) -> (rule8 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
Fiona is young.
("Fiona" "is" "young" "+")
((((((((((triple7) -> (rule1 % int5))) -> (rule2 % int4))) -> (rule5 % int3)) triple7) -> (rule8 % int2)) ((((triple7) -> (rule1 % int5))) -> (rule2 % int4))) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
int4
Fiona is furry.
("Fiona" "is" "furry" "+")
int5