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