Bob is big. Bob is blue. Bob is furry. Bob is nice. Dave is big. Erin is furry. Erin is green. All cold, quiet people are big. If someone is cold then they are big. All blue, furry people are cold. Nice, blue people are cold. Nice people are cold. If someone is quiet and nice then they are cold. Nice people are quiet. All quiet people are nice.
Bob is big.
("Bob" "is" "big" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is furry.
("Bob" "is" "furry" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Dave is big.
("Dave" "is" "big" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is green.
("Erin" "is" "green" "+")
All cold, quiet people are big.
((("someone" "is" "cold" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "big" "+"))
If someone is cold then they are big.
((("someone" "is" "cold" "+")) -> ("someone" "is" "big" "+"))
All blue, furry people are cold.
((("someone" "is" "blue" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "cold" "+"))
Nice, blue people are cold.
((("someone" "is" "nice" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "cold" "+"))
Nice people are cold.
((("someone" "is" "nice" "+")) -> ("someone" "is" "cold" "+"))
If someone is quiet and nice then they are cold.
((("someone" "is" "quiet" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "cold" "+"))
Nice people are quiet.
((("someone" "is" "nice" "+")) -> ("someone" "is" "quiet" "+"))
All quiet people are nice.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "nice" "+"))
Bob is nice.
True
1
proof
[(triple4)]
("Bob" "is" "nice" "+")
triple4
Erin is not furry.
False
1
inv-proof
[(triple6)]
("Erin" "is" "furry" "-")
triple6
Bob is cold.
True
2
proof
[(((triple4) -> rule5) OR ((triple2 triple3) -> rule3) OR ((triple4 triple2) -> rule4) OR ((((triple4) -> rule7) triple4) -> rule6))]
("Bob" "is" "cold" "+")
((triple4) -> (rule5 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((triple2 triple3) -> (rule3 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((triple4 triple2) -> (rule4 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((((triple4) -> (rule7 % int2)) triple4) -> (rule6 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is not quiet.
False
2
inv-proof
[(((triple4) -> rule7))]
("Bob" "is" "quiet" "-")
((triple4) -> (rule7 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Dave is not nice.
Unknown
inv-rconc
[@2: Dave is nice.[CWA. Example of deepest failure = (rule8 <- rule7 <- FAIL)]]
("Dave" "is" "nice" "-")
Erin is quiet.
Unknown
rconc
[@2: Erin is quiet.[CWA. Example of deepest failure = (rule7 <- rule8 <- FAIL)]]
("Erin" "is" "quiet" "+")
Dave is not blue.
Unknown
inv-random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "-")
Erin is blue.
Unknown
random
[@0: Erin is blue.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "blue" "+")
@0: Bob is big.[(triple1 OR ((((triple4) -> rule5)) -> rule2) OR ((((triple2 triple3) -> rule3)) -> rule2) OR ((((triple4 triple2) -> rule4)) -> rule2) OR ((((triple4) -> rule5) ((triple4) -> rule7)) -> rule1) OR ((((triple2 triple3) -> rule3) ((triple4) -> rule7)) -> rule1) OR ((((triple4 triple2) -> rule4) ((triple4) -> rule7)) -> rule1) OR ((((((triple4) -> rule7) triple4) -> rule6)) -> rule2) OR ((((((triple4) -> rule7) triple4) -> rule6) ((triple4) -> rule7)) -> rule1))] Bob is blue.[(triple2)] Bob is furry.[(triple3)] Bob is nice.[(triple4)] Dave is big.[(triple5)] Erin is furry.[(triple6)] Erin is green.[(triple7)] @1: Bob is cold.[(((triple4) -> rule5) OR ((triple2 triple3) -> rule3) OR ((triple4 triple2) -> rule4) OR ((((triple4) -> rule7) triple4) -> rule6))] Bob is quiet.[(((triple4) -> rule7))]
Bob is big.
("Bob" "is" "big" "+")
triple1
((((triple4) -> (rule5 % int2))) -> (rule2 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
((((triple2 triple3) -> (rule3 % int2))) -> (rule2 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
((((triple4 triple2) -> (rule4 % int2))) -> (rule2 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
((((triple4) -> (rule5 % int3)) ((triple4) -> (rule7 % int2))) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
int3
((((triple2 triple3) -> (rule3 % int3)) ((triple4) -> (rule7 % int2))) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
int3
((((triple4 triple2) -> (rule4 % int3)) ((triple4) -> (rule7 % int2))) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
int3
((((((triple4) -> (rule7 % int3)) triple4) -> (rule6 % int2))) -> (rule2 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
int3
((((((triple4) -> (rule7 % int3)) triple4) -> (rule6 % int2)) ((triple4) -> (rule7 % int3))) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
int3
Bob is blue.
("Bob" "is" "blue" "+")
triple2
Bob is furry.
("Bob" "is" "furry" "+")
triple3
Bob is nice.
("Bob" "is" "nice" "+")
triple4
Dave is big.
("Dave" "is" "big" "+")
triple5
Erin is furry.
("Erin" "is" "furry" "+")
triple6
Erin is green.
("Erin" "is" "green" "+")
triple7
Bob is cold.
("Bob" "is" "cold" "+")
((triple4) -> (rule5 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((triple2 triple3) -> (rule3 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((triple4 triple2) -> (rule4 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((((triple4) -> (rule7 % int2)) triple4) -> (rule6 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
((triple4) -> (rule7 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1