Anne is furry. Anne is kind. Anne is red. Anne is young. Fiona is kind. Fiona is young. Gary is kind. Harry is quiet. Harry is round. Harry is white. If Gary is quiet then Gary is furry. Young things are quiet. All white things are young. Round things are young. Red things are young. Quiet, furry things are white. Kind things are round. All furry things are round.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is red.
("Anne" "is" "red" "+")
Anne is young.
("Anne" "is" "young" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is white.
("Harry" "is" "white" "+")
If Gary is quiet then Gary is furry.
((("Gary" "is" "quiet" "+")) -> ("Gary" "is" "furry" "+"))
Young things are quiet.
((("something" "is" "young" "+")) -> ("something" "is" "quiet" "+"))
All white things are young.
((("something" "is" "white" "+")) -> ("something" "is" "young" "+"))
Round things are young.
((("something" "is" "round" "+")) -> ("something" "is" "young" "+"))
Red things are young.
((("something" "is" "red" "+")) -> ("something" "is" "young" "+"))
Quiet, furry things are white.
((("something" "is" "quiet" "+") ("something" "is" "furry" "+")) -> ("something" "is" "white" "+"))
Kind things are round.
((("something" "is" "kind" "+")) -> ("something" "is" "round" "+"))
All furry things are round.
((("something" "is" "furry" "+")) -> ("something" "is" "round" "+"))
Harry is round.
True
1
proof
[(triple9)]
("Harry" "is" "round" "+")
triple9
Anne is not young.
False
1
inv-proof
[(triple4 OR ((triple3) -> rule5) OR ((((triple1) -> rule8)) -> rule4) OR ((((triple2) -> rule7)) -> rule4))]
("Anne" "is" "young" "-")
triple4
((triple3) -> (rule5 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
((((triple1) -> (rule8 % int2))) -> (rule4 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((((triple2) -> (rule7 % int2))) -> (rule4 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is round.
True
2
proof
[(((triple1) -> rule8) OR ((triple2) -> rule7))]
("Anne" "is" "round" "+")
((triple1) -> (rule8 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
((triple2) -> (rule7 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Gary is not round.
False
2
inv-proof
[(((triple7) -> rule7))]
("Gary" "is" "round" "-")
((triple7) -> (rule7 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is young.
True
3
proof
[(((((triple7) -> rule7)) -> rule4))]
("Gary" "is" "young" "+")
((((triple7) -> (rule7 % int2))) -> (rule4 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is not young.
False
3
inv-proof
[(((((triple7) -> rule7)) -> rule4))]
("Gary" "is" "young" "-")
((((triple7) -> (rule7 % int2))) -> (rule4 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is quiet.
True
4
proof
[(((((((triple7) -> rule7)) -> rule4)) -> rule2))]
("Gary" "is" "quiet" "+")
((((((triple7) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
int3
Gary is not quiet.
False
4
inv-proof
[(((((((triple7) -> rule7)) -> rule4)) -> rule2))]
("Gary" "is" "quiet" "-")
((((((triple7) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
int3
Gary is furry.
True
5
proof
[(((((((((triple7) -> rule7)) -> rule4)) -> rule2)) -> rule1))]
("Gary" "is" "furry" "+")
((((((((triple7) -> (rule7 % int4))) -> (rule4 % int3))) -> (rule2 % int2))) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
int4
Gary is not furry.
False
5
inv-proof
[(((((((((triple7) -> rule7)) -> rule4)) -> rule2)) -> rule1))]
("Gary" "is" "furry" "-")
((((((((triple7) -> (rule7 % int4))) -> (rule4 % int3))) -> (rule2 % int2))) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
int4
Gary is white.
True
10
proof
[(((((((((triple7) -> rule7)) -> rule4)) -> rule2) ((((((((triple7) -> rule7)) -> rule4)) -> rule2)) -> rule1)) -> rule6))]
("Gary" "is" "white" "+")
((((((((triple7) -> (rule7 % int5))) -> (rule4 % int4))) -> (rule2 % int3)) ((((((((triple7) -> (rule7 % int5))) -> (rule4 % int4))) -> (rule2 % int3))) -> (rule1 % int2))) -> (rule6 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is young.
("Gary" "is" "young" "+")
int4
Gary is round.
("Gary" "is" "round" "+")
int5
Gary is not white.
False
10
inv-proof
[(((((((((triple7) -> rule7)) -> rule4)) -> rule2) ((((((((triple7) -> rule7)) -> rule4)) -> rule2)) -> rule1)) -> rule6))]
("Gary" "is" "white" "-")
((((((((triple7) -> (rule7 % int5))) -> (rule4 % int4))) -> (rule2 % int3)) ((((((((triple7) -> (rule7 % int5))) -> (rule4 % int4))) -> (rule2 % int3))) -> (rule1 % int2))) -> (rule6 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is young.
("Gary" "is" "young" "+")
int4
Gary is round.
("Gary" "is" "round" "+")
int5
Fiona is not white.
Unknown
inv-rconc
[@1: Fiona is white.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Fiona" "is" "white" "-")
Harry is red.
Unknown
random
[@0: Harry is red.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "red" "+")
Harry is not kind.
Unknown
inv-random
[@0: Harry is kind.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "kind" "-")
Fiona is red.
Unknown
random
[@0: Fiona is red.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "red" "+")
Fiona is not furry.
Unknown
inv-random
[@0: Fiona is furry.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "furry" "-")
Gary is red.
Unknown
random
[@0: Gary is red.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "red" "+")
@0: Anne is furry.[(triple1)] Anne is kind.[(triple2)] Anne is red.[(triple3)] Anne is young.[(triple4 OR ((triple3) -> rule5) OR ((((triple1) -> rule8)) -> rule4) OR ((((triple2) -> rule7)) -> rule4))] Fiona is kind.[(triple5)] Fiona is young.[(triple6 OR ((((triple5) -> rule7)) -> rule4))] Gary is kind.[(triple7)] Harry is quiet.[(triple8 OR ((((triple10) -> rule3)) -> rule2) OR ((((triple9) -> rule4)) -> rule2))] Harry is round.[(triple9)] Harry is white.[(triple10)] @1: Anne is quiet.[(((triple4) -> rule2) OR ((((triple3) -> rule5)) -> rule2) OR ((((((triple1) -> rule8)) -> rule4)) -> rule2) OR ((((((triple2) -> rule7)) -> rule4)) -> rule2))] Anne is round.[(((triple1) -> rule8) OR ((triple2) -> rule7))] Fiona is quiet.[(((triple6) -> rule2) OR ((((((triple5) -> rule7)) -> rule4)) -> rule2))] Fiona is round.[(((triple5) -> rule7))] Gary is round.[(((triple7) -> rule7))] Harry is young.[(((triple10) -> rule3) OR ((triple9) -> rule4))] @2: Anne is white.[(((((triple4) -> rule2) triple1) -> rule6) OR ((((((triple3) -> rule5)) -> rule2) triple1) -> rule6) OR ((((((((triple1) -> rule8)) -> rule4)) -> rule2) triple1) -> rule6) OR ((((((((triple2) -> rule7)) -> rule4)) -> rule2) triple1) -> rule6))] Gary is young.[(((((triple7) -> rule7)) -> rule4))] @3: Gary is quiet.[(((((((triple7) -> rule7)) -> rule4)) -> rule2))] @4: Gary is furry.[(((((((((triple7) -> rule7)) -> rule4)) -> rule2)) -> rule1))] @5: Gary is white.[(((((((((triple7) -> rule7)) -> rule4)) -> rule2) ((((((((triple7) -> rule7)) -> rule4)) -> rule2)) -> rule1)) -> rule6))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Anne is kind.
("Anne" "is" "kind" "+")
triple2
Anne is red.
("Anne" "is" "red" "+")
triple3
Anne is young.
("Anne" "is" "young" "+")
triple4
((triple3) -> (rule5 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
((((triple1) -> (rule8 % int2))) -> (rule4 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((((triple2) -> (rule7 % int2))) -> (rule4 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
triple5
Fiona is young.
("Fiona" "is" "young" "+")
triple6
((((triple5) -> (rule7 % int2))) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
triple7
Harry is quiet.
("Harry" "is" "quiet" "+")
triple8
((((triple10) -> (rule3 % int2))) -> (rule2 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
((((triple9) -> (rule4 % int2))) -> (rule2 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
triple9
Harry is white.
("Harry" "is" "white" "+")
triple10
Anne is quiet.
("Anne" "is" "quiet" "+")
((triple4) -> (rule2 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
((((triple3) -> (rule5 % int2))) -> (rule2 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
((((((triple1) -> (rule8 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
((((((triple2) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
Anne is round.
("Anne" "is" "round" "+")
((triple1) -> (rule8 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
((triple2) -> (rule7 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((triple6) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
((((((triple5) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
((triple5) -> (rule7 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
((triple7) -> (rule7 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
((triple10) -> (rule3 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
((triple9) -> (rule4 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
((((triple4) -> (rule2 % int2)) triple1) -> (rule6 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
((((((triple3) -> (rule5 % int3))) -> (rule2 % int2)) triple1) -> (rule6 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
Anne is young.
("Anne" "is" "young" "+")
int3
((((((((triple1) -> (rule8 % int4))) -> (rule4 % int3))) -> (rule2 % int2)) triple1) -> (rule6 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
Anne is young.
("Anne" "is" "young" "+")
int3
Anne is round.
("Anne" "is" "round" "+")
int4
((((((((triple2) -> (rule7 % int4))) -> (rule4 % int3))) -> (rule2 % int2)) triple1) -> (rule6 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
Anne is young.
("Anne" "is" "young" "+")
int3
Anne is round.
("Anne" "is" "round" "+")
int4
Gary is young.
("Gary" "is" "young" "+")
((((triple7) -> (rule7 % int2))) -> (rule4 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
((((((triple7) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
int3
Gary is furry.
("Gary" "is" "furry" "+")
((((((((triple7) -> (rule7 % int4))) -> (rule4 % int3))) -> (rule2 % int2))) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
int4
Gary is white.
("Gary" "is" "white" "+")
((((((((triple7) -> (rule7 % int5))) -> (rule4 % int4))) -> (rule2 % int3)) ((((((((triple7) -> (rule7 % int5))) -> (rule4 % int4))) -> (rule2 % int3))) -> (rule1 % int2))) -> (rule6 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is young.
("Gary" "is" "young" "+")
int4
Gary is round.
("Gary" "is" "round" "+")
int5