Bob is cold. Bob is nice. Charlie is furry. Charlie is not green. Charlie is nice. Dave is cold. Fiona is cold. Fiona is green. Fiona is nice. Fiona is red. Big, furry things are cold. All big things are red. All big things are red. Blue, red things are not nice. Cold things are furry. All big, nice things are furry. If Dave is furry then Dave is big. Cold things are green.
Bob is cold.
("Bob" "is" "cold" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is not green.
("Charlie" "is" "green" "-")
Charlie is nice.
("Charlie" "is" "nice" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Big, furry things are cold.
((("something" "is" "big" "+") ("something" "is" "furry" "+")) -> ("something" "is" "cold" "+"))
All big things are red.
((("something" "is" "big" "+")) -> ("something" "is" "red" "+"))
All big things are red.
((("something" "is" "big" "+")) -> ("something" "is" "red" "+"))
Blue, red things are not nice.
((("something" "is" "blue" "+") ("something" "is" "red" "+")) -> ("something" "is" "nice" "-"))
Cold things are furry.
((("something" "is" "cold" "+")) -> ("something" "is" "furry" "+"))
All big, nice things are furry.
((("something" "is" "big" "+") ("something" "is" "nice" "+")) -> ("something" "is" "furry" "+"))
If Dave is furry then Dave is big.
((("Dave" "is" "furry" "+")) -> ("Dave" "is" "big" "+"))
Cold things are green.
((("something" "is" "cold" "+")) -> ("something" "is" "green" "+"))
Fiona is nice.
True
1
proof
[(triple9)]
("Fiona" "is" "nice" "+")
triple9
Bob is not nice.
False
1
inv-proof
[(triple2)]
("Bob" "is" "nice" "-")
triple2
Fiona is furry.
True
2
proof
[(((triple7) -> rule5))]
("Fiona" "is" "furry" "+")
((triple7) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is not furry.
False
2
inv-proof
[(((triple7) -> rule5))]
("Fiona" "is" "furry" "-")
((triple7) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Dave is big.
True
3
proof
[(((((triple6) -> rule5)) -> rule7))]
("Dave" "is" "big" "+")
((((triple6) -> (rule5 % int2))) -> (rule7 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is not big.
False
3
inv-proof
[(((((triple6) -> rule5)) -> rule7))]
("Dave" "is" "big" "-")
((((triple6) -> (rule5 % int2))) -> (rule7 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is red.
True
4
proof
[(((((((triple6) -> rule5)) -> rule7)) -> rule2) OR ((((((triple6) -> rule5)) -> rule7)) -> rule3))]
("Dave" "is" "red" "+")
((((((triple6) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule2 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
((((((triple6) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
Dave is not red.
False
4
inv-proof
[(((((((triple6) -> rule5)) -> rule7)) -> rule2) OR ((((((triple6) -> rule5)) -> rule7)) -> rule3))]
("Dave" "is" "red" "-")
((((((triple6) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule2 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
((((((triple6) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
Bob is not red.
Unknown
inv-rconc
[@1: Bob is red.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Bob" "is" "red" "-")
Charlie is cold.
Unknown
rconc
[@1: Charlie is cold.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Charlie" "is" "cold" "+")
Charlie is not red.
Unknown
inv-rconc
[@1: Charlie is red.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Charlie" "is" "red" "-")
Dave is blue.
Unknown
random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "+")
Bob is not blue.
Unknown
inv-random
[@0: Bob is blue.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "blue" "-")
Fiona is big.
Unknown
random
[@0: Fiona is big.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "big" "+")
Dave is not nice.
Unknown
inv-random
[@0: Dave is nice.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "nice" "-")
Bob is big.
Unknown
random
[@0: Bob is big.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "big" "+")
@0: Bob is cold.[(triple1)] Bob is nice.[(triple2)] Charlie is furry.[(triple3)] Charlie is nice.[(triple5)] Charlie is not green.[(triple4)] Dave is cold.[(triple6)] Fiona is cold.[(triple7)] Fiona is green.[(triple8 OR ((triple7) -> rule8))] Fiona is nice.[(triple9)] Fiona is red.[(triple10)] @1: Bob is furry.[(((triple1) -> rule5))] Bob is green.[(((triple1) -> rule8))] Dave is furry.[(((triple6) -> rule5))] Dave is green.[(((triple6) -> rule8))] Fiona is furry.[(((triple7) -> rule5))] @2: Dave is big.[(((((triple6) -> rule5)) -> rule7))] @3: Dave is red.[(((((((triple6) -> rule5)) -> rule7)) -> rule2) OR ((((((triple6) -> rule5)) -> rule7)) -> rule3))]
Bob is cold.
("Bob" "is" "cold" "+")
triple1
Bob is nice.
("Bob" "is" "nice" "+")
triple2
Charlie is furry.
("Charlie" "is" "furry" "+")
triple3
Charlie is nice.
("Charlie" "is" "nice" "+")
triple5
Charlie is not green.
("Charlie" "is" "green" "-")
triple4
Dave is cold.
("Dave" "is" "cold" "+")
triple6
Fiona is cold.
("Fiona" "is" "cold" "+")
triple7
Fiona is green.
("Fiona" "is" "green" "+")
triple8
((triple7) -> (rule8 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
triple9
Fiona is red.
("Fiona" "is" "red" "+")
triple10
Bob is furry.
("Bob" "is" "furry" "+")
((triple1) -> (rule5 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
((triple1) -> (rule8 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
((triple6) -> (rule5 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
((triple6) -> (rule8 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple7) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
((((triple6) -> (rule5 % int2))) -> (rule7 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is red.
("Dave" "is" "red" "+")
((((((triple6) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule2 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3
((((((triple6) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
int3