Anne is nice. Bob is not cold. Bob is kind. Bob is nice. Bob is smart. Charlie is cold. Charlie is nice. Charlie is red. Charlie is rough. Fiona is cold. Fiona is nice. Fiona is not red. If Fiona is rough and Fiona is not smart then Fiona is cold. If Fiona is nice and Fiona is red then Fiona is cold. If something is cold and red then it is rough. If something is smart then it is not rough. If something is cold then it is kind. All smart things are red. All rough things are nice. If something is red and not nice then it is round.
Anne is nice.
("Anne" "is" "nice" "+")
Bob is not cold.
("Bob" "is" "cold" "-")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is not red.
("Fiona" "is" "red" "-")
If Fiona is rough and Fiona is not smart then Fiona is cold.
((("Fiona" "is" "rough" "+") ("Fiona" "is" "smart" "~")) -> ("Fiona" "is" "cold" "+"))
If Fiona is nice and Fiona is red then Fiona is cold.
((("Fiona" "is" "nice" "+") ("Fiona" "is" "red" "+")) -> ("Fiona" "is" "cold" "+"))
If something is cold and red then it is rough.
((("something" "is" "cold" "+") ("something" "is" "red" "+")) -> ("something" "is" "rough" "+"))
If something is smart then it is not rough.
((("something" "is" "smart" "+")) -> ("something" "is" "rough" "-"))
If something is cold then it is kind.
((("something" "is" "cold" "+")) -> ("something" "is" "kind" "+"))
All smart things are red.
((("something" "is" "smart" "+")) -> ("something" "is" "red" "+"))
All rough things are nice.
((("something" "is" "rough" "+")) -> ("something" "is" "nice" "+"))
If something is red and not nice then it is round.
((("something" "is" "red" "+") ("something" "is" "nice" "~")) -> ("something" "is" "round" "+"))
Bob is kind.
True
1
proof
[(triple3)]
("Bob" "is" "kind" "+")
triple3
Bob is not kind.
False
1
inv-proof
[(triple3)]
("Bob" "is" "kind" "-")
triple3
Fiona is not rough.
Unknown
inv-rconc
[@1: Fiona is rough.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Fiona" "is" "rough" "-")
Anne is smart.
Unknown
random
[@0: Anne is smart.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "smart" "+")
@0: Anne is nice.[(triple1)] Bob is kind.[(triple3)] Bob is nice.[(triple4)] Bob is not cold.[(triple2)] Bob is smart.[(triple5)] Charlie is cold.[(triple6)] Charlie is nice.[(triple7 OR ((triple9) -> rule7) OR ((((triple6 triple8) -> rule3)) -> rule7))] Charlie is red.[(triple8)] Charlie is rough.[(triple9 OR ((triple6 triple8) -> rule3))] Fiona is cold.[(triple10)] Fiona is nice.[(triple11)] Fiona is not red.[(triple12)] @1: Bob is not rough.[(((triple5) -> rule4))] Bob is red.[(((triple5) -> rule6))] Charlie is kind.[(((triple6) -> rule5))] Fiona is kind.[(((triple10) -> rule5))]
Anne is nice.
("Anne" "is" "nice" "+")
triple1
Bob is kind.
("Bob" "is" "kind" "+")
triple3
Bob is nice.
("Bob" "is" "nice" "+")
triple4
Bob is not cold.
("Bob" "is" "cold" "-")
triple2
Bob is smart.
("Bob" "is" "smart" "+")
triple5
Charlie is cold.
("Charlie" "is" "cold" "+")
triple6
Charlie is nice.
("Charlie" "is" "nice" "+")
triple7
((triple9) -> (rule7 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
((((triple6 triple8) -> (rule3 % int2))) -> (rule7 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
triple8
Charlie is rough.
("Charlie" "is" "rough" "+")
triple9
((triple6 triple8) -> (rule3 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
triple10
Fiona is nice.
("Fiona" "is" "nice" "+")
triple11
Fiona is not red.
("Fiona" "is" "red" "-")
triple12
Bob is not rough.
("Bob" "is" "rough" "-")
((triple5) -> (rule4 % int1))
Bob is not rough.
("Bob" "is" "rough" "-")
int1
Bob is red.
("Bob" "is" "red" "+")
((triple5) -> (rule6 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
((triple6) -> (rule5 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple10) -> (rule5 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1