Anne is furry. Anne is quiet. Anne is round. Erin is red. Erin is not smart. Erin is white. Fiona is furry. Fiona is quiet. Fiona is red. Fiona is not smart. Fiona is not white. Harry is furry. Harry is quiet. Harry is rough. Harry is smart. If Erin is not white then Erin is not red. White, furry people are red. If Anne is round then Anne is white. Furry people are round. All furry people are quiet. If someone is rough then they are quiet. Round people are rough. If Erin is red then Erin is not round.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is quiet.
("Anne" "is" "quiet" "+")
Anne is round.
("Anne" "is" "round" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is not smart.
("Erin" "is" "smart" "-")
Erin is white.
("Erin" "is" "white" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is not smart.
("Fiona" "is" "smart" "-")
Fiona is not white.
("Fiona" "is" "white" "-")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is smart.
("Harry" "is" "smart" "+")
If Erin is not white then Erin is not red.
((("Erin" "is" "white" "~")) -> ("Erin" "is" "red" "-"))
White, furry people are red.
((("someone" "is" "white" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "red" "+"))
If Anne is round then Anne is white.
((("Anne" "is" "round" "+")) -> ("Anne" "is" "white" "+"))
Furry people are round.
((("someone" "is" "furry" "+")) -> ("someone" "is" "round" "+"))
All furry people are quiet.
((("someone" "is" "furry" "+")) -> ("someone" "is" "quiet" "+"))
If someone is rough then they are quiet.
((("someone" "is" "rough" "+")) -> ("someone" "is" "quiet" "+"))
Round people are rough.
((("someone" "is" "round" "+")) -> ("someone" "is" "rough" "+"))
If Erin is red then Erin is not round.
((("Erin" "is" "red" "+")) -> ("Erin" "is" "round" "-"))
Anne is furry.
True
1
proof
[(triple1)]
("Anne" "is" "furry" "+")
triple1
Anne is not round.
False
1
inv-proof
[(triple3 OR ((triple1) -> rule4))]
("Anne" "is" "round" "-")
triple3
((triple1) -> (rule4 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is white.
True
2
proof
[(((triple3) -> rule3) OR ((((triple1) -> rule4)) -> rule3))]
("Anne" "is" "white" "+")
((triple3) -> (rule3 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
((((triple1) -> (rule4 % int2))) -> (rule3 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Harry is not round.
False
2
inv-proof
[(((triple12) -> rule4))]
("Harry" "is" "round" "-")
((triple12) -> (rule4 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Fiona is rough.
True
3
proof
[(((((triple7) -> rule4)) -> rule7))]
("Fiona" "is" "rough" "+")
((((triple7) -> (rule4 % int2))) -> (rule7 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Anne is not red.
False
4
inv-proof
[(((((triple3) -> rule3) triple1) -> rule2) OR ((((((triple1) -> rule4)) -> rule3) triple1) -> rule2))]
("Anne" "is" "red" "-")
((((triple3) -> (rule3 % int2)) triple1) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
((((((triple1) -> (rule4 % int3))) -> (rule3 % int2)) triple1) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
Erin is not quiet.
Unknown
inv-rconc
[@2: Erin is quiet.[CWA. Example of deepest failure = (rule6 <- rule7 <- FAIL)]]
("Erin" "is" "quiet" "-")
Erin is rough.
Unknown
rconc
[@1: Erin is rough.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("Erin" "is" "rough" "+")
Harry is not red.
Unknown
inv-rconc
[@1: Harry is red.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Harry" "is" "red" "-")
Harry is white.
Unknown
random
[@0: Harry is white.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "white" "+")
Anne is not smart.
Unknown
inv-random
[@0: Anne is smart.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "smart" "-")
Erin is furry.
Unknown
random
[@0: Erin is furry.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "furry" "+")
@0: Anne is furry.[(triple1)] Anne is quiet.[(triple2 OR ((triple1) -> rule5) OR ((((triple3) -> rule7)) -> rule6) OR ((((((triple1) -> rule4)) -> rule7)) -> rule6))] Anne is round.[(triple3 OR ((triple1) -> rule4))] Erin is not smart.[(triple5)] Erin is red.[(triple4)] Erin is white.[(triple6)] Fiona is furry.[(triple7)] Fiona is not smart.[(triple10)] Fiona is not white.[(triple11)] Fiona is quiet.[(triple8 OR ((triple7) -> rule5) OR ((((((triple7) -> rule4)) -> rule7)) -> rule6))] Fiona is red.[(triple9)] Harry is furry.[(triple12)] Harry is quiet.[(triple13 OR ((triple12) -> rule5) OR ((triple14) -> rule6) OR ((((((triple12) -> rule4)) -> rule7)) -> rule6))] Harry is rough.[(triple14 OR ((((triple12) -> rule4)) -> rule7))] Harry is smart.[(triple15)] @1: Anne is rough.[(((triple3) -> rule7) OR ((((triple1) -> rule4)) -> rule7))] Anne is white.[(((triple3) -> rule3) OR ((((triple1) -> rule4)) -> rule3))] Erin is not round.[(((triple4) -> rule8))] Fiona is round.[(((triple7) -> rule4))] Harry is round.[(((triple12) -> rule4))] @2: Anne is red.[(((((triple3) -> rule3) triple1) -> rule2) OR ((((((triple1) -> rule4)) -> rule3) triple1) -> rule2))] Fiona is rough.[(((((triple7) -> rule4)) -> rule7))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Anne is quiet.
("Anne" "is" "quiet" "+")
triple2
((triple1) -> (rule5 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
((((triple3) -> (rule7 % int2))) -> (rule6 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
((((((triple1) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
Anne is round.
("Anne" "is" "round" "+")
triple3
((triple1) -> (rule4 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Erin is not smart.
("Erin" "is" "smart" "-")
triple5
Erin is red.
("Erin" "is" "red" "+")
triple4
Erin is white.
("Erin" "is" "white" "+")
triple6
Fiona is furry.
("Fiona" "is" "furry" "+")
triple7
Fiona is not smart.
("Fiona" "is" "smart" "-")
triple10
Fiona is not white.
("Fiona" "is" "white" "-")
triple11
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple8
((triple7) -> (rule5 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
((((((triple7) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is red.
("Fiona" "is" "red" "+")
triple9
Harry is furry.
("Harry" "is" "furry" "+")
triple12
Harry is quiet.
("Harry" "is" "quiet" "+")
triple13
((triple12) -> (rule5 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
((triple14) -> (rule6 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
((((((triple12) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule6 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
Harry is rough.
("Harry" "is" "rough" "+")
triple14
((((triple12) -> (rule4 % int2))) -> (rule7 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
triple15
Anne is rough.
("Anne" "is" "rough" "+")
((triple3) -> (rule7 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
((((triple1) -> (rule4 % int2))) -> (rule7 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is white.
("Anne" "is" "white" "+")
((triple3) -> (rule3 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
((((triple1) -> (rule4 % int2))) -> (rule3 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Erin is not round.
("Erin" "is" "round" "-")
((triple4) -> (rule8 % int1))
Erin is not round.
("Erin" "is" "round" "-")
int1
Fiona is round.
("Fiona" "is" "round" "+")
((triple7) -> (rule4 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
((triple12) -> (rule4 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
((((triple3) -> (rule3 % int2)) triple1) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
((((((triple1) -> (rule4 % int3))) -> (rule3 % int2)) triple1) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
int3
Fiona is rough.
("Fiona" "is" "rough" "+")
((((triple7) -> (rule4 % int2))) -> (rule7 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2