Anne is kind. Anne is red. Anne is round. Anne is white. Fiona is blue. Fiona is smart. Fiona is white. If Fiona is white then Fiona is red. If Fiona is kind then Fiona is not round. If something is blue then it is kind. If something is smart and not white then it is green. All round things are green. If something is round and not red then it is smart. Red things are smart. Blue, white things are smart.
Anne is kind.
("Anne" "is" "kind" "+")
Anne is red.
("Anne" "is" "red" "+")
Anne is round.
("Anne" "is" "round" "+")
Anne is white.
("Anne" "is" "white" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Fiona is white.
("Fiona" "is" "white" "+")
If Fiona is white then Fiona is red.
((("Fiona" "is" "white" "+")) -> ("Fiona" "is" "red" "+"))
If Fiona is kind then Fiona is not round.
((("Fiona" "is" "kind" "+")) -> ("Fiona" "is" "round" "-"))
If something is blue then it is kind.
((("something" "is" "blue" "+")) -> ("something" "is" "kind" "+"))
If something is smart and not white then it is green.
((("something" "is" "smart" "+") ("something" "is" "white" "~")) -> ("something" "is" "green" "+"))
All round things are green.
((("something" "is" "round" "+")) -> ("something" "is" "green" "+"))
If something is round and not red then it is smart.
((("something" "is" "round" "+") ("something" "is" "red" "~")) -> ("something" "is" "smart" "+"))
Red things are smart.
((("something" "is" "red" "+")) -> ("something" "is" "smart" "+"))
Blue, white things are smart.
((("something" "is" "blue" "+") ("something" "is" "white" "+")) -> ("something" "is" "smart" "+"))
Fiona is blue.
True
1
proof
[(triple5)]
("Fiona" "is" "blue" "+")
triple5
Fiona is not white.
False
1
inv-proof
[(triple7)]
("Fiona" "is" "white" "-")
triple7
Fiona is not green.
Unknown
inv-rconc
[@1: Fiona is green.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Fiona" "is" "green" "-")
Anne is blue.
Unknown
random
[@0: Anne is blue.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "blue" "+")
@0: Anne is kind.[(triple1)] Anne is red.[(triple2)] Anne is round.[(triple3)] Anne is white.[(triple4)] Fiona is blue.[(triple5)] Fiona is smart.[(triple6 OR ((triple5 triple7) -> rule8) OR ((((triple7) -> rule1)) -> rule7))] Fiona is white.[(triple7)] @1: Anne is green.[(((triple3) -> rule5))] Anne is smart.[(((triple2) -> rule7))] Fiona is kind.[(((triple5) -> rule3))] Fiona is red.[(((triple7) -> rule1))] @2: Fiona is not round.[(((((triple5) -> rule3)) -> rule2))]
Anne is kind.
("Anne" "is" "kind" "+")
triple1
Anne is red.
("Anne" "is" "red" "+")
triple2
Anne is round.
("Anne" "is" "round" "+")
triple3
Anne is white.
("Anne" "is" "white" "+")
triple4
Fiona is blue.
("Fiona" "is" "blue" "+")
triple5
Fiona is smart.
("Fiona" "is" "smart" "+")
triple6
((triple5 triple7) -> (rule8 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
((((triple7) -> (rule1 % int2))) -> (rule7 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
triple7
Anne is green.
("Anne" "is" "green" "+")
((triple3) -> (rule5 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
((triple2) -> (rule7 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple5) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
((triple7) -> (rule1 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is not round.
("Fiona" "is" "round" "-")
((((triple5) -> (rule3 % int2))) -> (rule2 % int1))
Fiona is not round.
("Fiona" "is" "round" "-")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2