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