Bob is not furry. Bob is green. Bob is not kind. Dave is cold. Dave is not furry. Dave is green. Fiona is cold. Fiona is green. Fiona is nice. Fiona is round. Gary is not cold. Gary is not furry. Gary is green. Gary is kind. Gary is not rough. Gary is round. If Bob is furry and Bob is not cold then Bob is round. All cold things are not furry. If something is kind and not cold then it is green. All furry, rough things are not round. If Dave is not furry then Dave is green. If something is green then it is not rough.
Bob is not furry.
("Bob" "is" "furry" "-")
Bob is green.
("Bob" "is" "green" "+")
Bob is not kind.
("Bob" "is" "kind" "-")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is not furry.
("Dave" "is" "furry" "-")
Dave is green.
("Dave" "is" "green" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Gary is not cold.
("Gary" "is" "cold" "-")
Gary is not furry.
("Gary" "is" "furry" "-")
Gary is green.
("Gary" "is" "green" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is not rough.
("Gary" "is" "rough" "-")
Gary is round.
("Gary" "is" "round" "+")
If Bob is furry and Bob is not cold then Bob is round.
((("Bob" "is" "furry" "+") ("Bob" "is" "cold" "~")) -> ("Bob" "is" "round" "+"))
All cold things are not furry.
((("something" "is" "cold" "+")) -> ("something" "is" "furry" "-"))
If something is kind and not cold then it is green.
((("something" "is" "kind" "+") ("something" "is" "cold" "~")) -> ("something" "is" "green" "+"))
All furry, rough things are not round.
((("something" "is" "furry" "+") ("something" "is" "rough" "+")) -> ("something" "is" "round" "-"))
If Dave is not furry then Dave is green.
((("Dave" "is" "furry" "~")) -> ("Dave" "is" "green" "+"))
If something is green then it is not rough.
((("something" "is" "green" "+")) -> ("something" "is" "rough" "-"))
Fiona is nice.
True
1
proof
[(triple9)]
("Fiona" "is" "nice" "+")
triple9
Fiona is not cold.
False
1
inv-proof
[(triple7)]
("Fiona" "is" "cold" "-")
triple7
Bob is not rough.
True
2
proof
[(((triple2) -> rule6))]
("Bob" "is" "rough" "-")
((triple2) -> (rule6 % int1))
Bob is not rough.
("Bob" "is" "rough" "-")
int1
Dave is rough.
False
2
inv-proof
[(((triple6) -> rule6) OR ((((triple5) -> rule5)) -> rule6) OR ((((((triple4) -> rule2)) -> rule5)) -> rule6))]
("Dave" "is" "rough" "+")
((triple6) -> (rule6 % int1))
Dave is not rough.
("Dave" "is" "rough" "-")
int1
((((triple5) -> (rule5 % int2))) -> (rule6 % int1))
Dave is not rough.
("Dave" "is" "rough" "-")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
((((((triple4) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Dave is not rough.
("Dave" "is" "rough" "-")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is not furry.
("Dave" "is" "furry" "-")
int3
Bob is not round.
Unknown
inv-rconc
[@1: Bob is round.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Bob" "is" "round" "-")
Dave is kind.
Unknown
random
[@0: Dave is kind.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "kind" "+")
Dave is not nice.
Unknown
inv-random
[@0: Dave is nice.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "nice" "-")
Dave is round.
Unknown
random
[@0: Dave is round.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "round" "+")
@0: Bob is green.[(triple2)] Bob is not furry.[(triple1)] Bob is not kind.[(triple3)] Dave is cold.[(triple4)] Dave is green.[(triple6 OR ((triple5) -> rule5) OR ((((triple4) -> rule2)) -> rule5))] Dave is not furry.[(triple5 OR ((triple4) -> rule2))] Fiona is cold.[(triple7)] Fiona is green.[(triple8)] Fiona is nice.[(triple9)] Fiona is round.[(triple10)] Gary is green.[(triple13 OR ((triple14 triple11) -> rule3))] Gary is kind.[(triple14)] Gary is not cold.[(triple11)] Gary is not furry.[(triple12)] Gary is not rough.[(triple15 OR ((triple13) -> rule6) OR ((((triple14 triple11) -> rule3)) -> rule6))] Gary is round.[(triple16)] @1: Bob is not rough.[(((triple2) -> rule6))] Dave is not rough.[(((triple6) -> rule6) OR ((((triple5) -> rule5)) -> rule6) OR ((((((triple4) -> rule2)) -> rule5)) -> rule6))] Fiona is not furry.[(((triple7) -> rule2))] Fiona is not rough.[(((triple8) -> rule6))]
Bob is green.
("Bob" "is" "green" "+")
triple2
Bob is not furry.
("Bob" "is" "furry" "-")
triple1
Bob is not kind.
("Bob" "is" "kind" "-")
triple3
Dave is cold.
("Dave" "is" "cold" "+")
triple4
Dave is green.
("Dave" "is" "green" "+")
triple6
((triple5) -> (rule5 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
((((triple4) -> (rule2 % int2))) -> (rule5 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is not furry.
("Dave" "is" "furry" "-")
int2
Dave is not furry.
("Dave" "is" "furry" "-")
triple5
((triple4) -> (rule2 % int1))
Dave is not furry.
("Dave" "is" "furry" "-")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
triple7
Fiona is green.
("Fiona" "is" "green" "+")
triple8
Fiona is nice.
("Fiona" "is" "nice" "+")
triple9
Fiona is round.
("Fiona" "is" "round" "+")
triple10
Gary is green.
("Gary" "is" "green" "+")
triple13
((triple14 triple11) -> (rule3 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
triple14
Gary is not cold.
("Gary" "is" "cold" "-")
triple11
Gary is not furry.
("Gary" "is" "furry" "-")
triple12
Gary is not rough.
("Gary" "is" "rough" "-")
triple15
((triple13) -> (rule6 % int1))
Gary is not rough.
("Gary" "is" "rough" "-")
int1
((((triple14 triple11) -> (rule3 % int2))) -> (rule6 % int1))
Gary is not rough.
("Gary" "is" "rough" "-")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
triple16
Bob is not rough.
("Bob" "is" "rough" "-")
((triple2) -> (rule6 % int1))
Bob is not rough.
("Bob" "is" "rough" "-")
int1
Dave is not rough.
("Dave" "is" "rough" "-")
((triple6) -> (rule6 % int1))
Dave is not rough.
("Dave" "is" "rough" "-")
int1
((((triple5) -> (rule5 % int2))) -> (rule6 % int1))
Dave is not rough.
("Dave" "is" "rough" "-")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
((((((triple4) -> (rule2 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Dave is not rough.
("Dave" "is" "rough" "-")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is not furry.
("Dave" "is" "furry" "-")
int3
Fiona is not furry.
("Fiona" "is" "furry" "-")
((triple7) -> (rule2 % int1))
Fiona is not furry.
("Fiona" "is" "furry" "-")
int1
Fiona is not rough.
("Fiona" "is" "rough" "-")
((triple8) -> (rule6 % int1))
Fiona is not rough.
("Fiona" "is" "rough" "-")
int1