Dave is cold. Erin is furry. Erin is nice. Erin is rough. Fiona is blue. Fiona is cold. Fiona is furry. Fiona is rough. Fiona is round. Fiona is smart. All cold things are rough. Furry, nice things are rough. If Dave is rough and Dave is round then Dave is nice. If Erin is nice then Erin is rough. If Fiona is rough then Fiona is nice. If something is cold and furry then it is smart. If Erin is smart then Erin is round. If something is blue then it is cold.
Dave is cold.
("Dave" "is" "cold" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
All cold things are rough.
((("something" "is" "cold" "+")) -> ("something" "is" "rough" "+"))
Furry, nice things are rough.
((("something" "is" "furry" "+") ("something" "is" "nice" "+")) -> ("something" "is" "rough" "+"))
If Dave is rough and Dave is round then Dave is nice.
((("Dave" "is" "rough" "+") ("Dave" "is" "round" "+")) -> ("Dave" "is" "nice" "+"))
If Erin is nice then Erin is rough.
((("Erin" "is" "nice" "+")) -> ("Erin" "is" "rough" "+"))
If Fiona is rough then Fiona is nice.
((("Fiona" "is" "rough" "+")) -> ("Fiona" "is" "nice" "+"))
If something is cold and furry then it is smart.
((("something" "is" "cold" "+") ("something" "is" "furry" "+")) -> ("something" "is" "smart" "+"))
If Erin is smart then Erin is round.
((("Erin" "is" "smart" "+")) -> ("Erin" "is" "round" "+"))
If something is blue then it is cold.
((("something" "is" "blue" "+")) -> ("something" "is" "cold" "+"))
Fiona is furry.
True
1
proof
[(triple7)]
("Fiona" "is" "furry" "+")
triple7
Fiona is not furry.
False
1
inv-proof
[(triple7)]
("Fiona" "is" "furry" "-")
triple7
Dave is not nice.
Unknown
inv-rconc
[@1: Dave is nice.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Dave" "is" "nice" "-")
Dave is round.
Unknown
random
[@0: Dave is round.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "round" "+")
@0: Dave is cold.[(triple1)] Erin is furry.[(triple2)] Erin is nice.[(triple3)] Erin is rough.[(triple4 OR ((triple3) -> rule4) OR ((triple2 triple3) -> rule2))] Fiona is blue.[(triple5)] Fiona is cold.[(triple6 OR ((triple5) -> rule8))] Fiona is furry.[(triple7)] Fiona is rough.[(triple8 OR ((triple6) -> rule1) OR ((((triple5) -> rule8)) -> rule1))] Fiona is round.[(triple9)] Fiona is smart.[(triple10 OR ((triple6 triple7) -> rule6) OR ((((triple5) -> rule8) triple7) -> rule6))] @1: Dave is rough.[(((triple1) -> rule1))] Fiona is nice.[(((triple8) -> rule5) OR ((((triple6) -> rule1)) -> rule5) OR ((((((triple5) -> rule8)) -> rule1)) -> rule5))]
Dave is cold.
("Dave" "is" "cold" "+")
triple1
Erin is furry.
("Erin" "is" "furry" "+")
triple2
Erin is nice.
("Erin" "is" "nice" "+")
triple3
Erin is rough.
("Erin" "is" "rough" "+")
triple4
((triple3) -> (rule4 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
((triple2 triple3) -> (rule2 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
triple5
Fiona is cold.
("Fiona" "is" "cold" "+")
triple6
((triple5) -> (rule8 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
triple7
Fiona is rough.
("Fiona" "is" "rough" "+")
triple8
((triple6) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
((((triple5) -> (rule8 % int2))) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
triple9
Fiona is smart.
("Fiona" "is" "smart" "+")
triple10
((triple6 triple7) -> (rule6 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
((((triple5) -> (rule8 % int2)) triple7) -> (rule6 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
((triple1) -> (rule1 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
((triple8) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((((triple6) -> (rule1 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
((((((triple5) -> (rule8 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3