Bob is not green. Bob is round. Bob is not young. Dave is blue. Dave is cold. Dave is not green. Dave is round. Dave is smart. Dave is young. Fiona is round. If something is round then it is white. If something is blue and not round then it is white. If something is green and not smart then it is white. If something is white and not young then it is blue. If Dave is cold and Dave is not round then Dave is not green. Young things are cold.
Bob is not green.
("Bob" "is" "green" "-")
Bob is round.
("Bob" "is" "round" "+")
Bob is not young.
("Bob" "is" "young" "-")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is not green.
("Dave" "is" "green" "-")
Dave is round.
("Dave" "is" "round" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Dave is young.
("Dave" "is" "young" "+")
Fiona is round.
("Fiona" "is" "round" "+")
If something is round then it is white.
((("something" "is" "round" "+")) -> ("something" "is" "white" "+"))
If something is blue and not round then it is white.
((("something" "is" "blue" "+") ("something" "is" "round" "~")) -> ("something" "is" "white" "+"))
If something is green and not smart then it is white.
((("something" "is" "green" "+") ("something" "is" "smart" "~")) -> ("something" "is" "white" "+"))
If something is white and not young then it is blue.
((("something" "is" "white" "+") ("something" "is" "young" "~")) -> ("something" "is" "blue" "+"))
If Dave is cold and Dave is not round then Dave is not green.
((("Dave" "is" "cold" "+") ("Dave" "is" "round" "~")) -> ("Dave" "is" "green" "-"))
Young things are cold.
((("something" "is" "young" "+")) -> ("something" "is" "cold" "+"))
Bob is not green.
True
1
proof
[(triple1)]
("Bob" "is" "green" "-")
triple1
Bob is green.
False
1
inv-proof
[(triple1)]
("Bob" "is" "green" "+")
triple1
Dave is white.
True
2
proof
[(((triple7) -> rule1))]
("Dave" "is" "white" "+")
((triple7) -> (rule1 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Bob is not white.
False
2
inv-proof
[(((triple2) -> rule1))]
("Bob" "is" "white" "-")
((triple2) -> (rule1 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is blue.
True
4
proof
[(((((triple2) -> rule1) triple3) -> rule4))]
("Bob" "is" "blue" "+")
((((triple2) -> (rule1 % int2)) triple3) -> (rule4 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is not blue.
False
4
inv-proof
[(((((triple2) -> rule1) triple3) -> rule4))]
("Bob" "is" "blue" "-")
((((triple2) -> (rule1 % int2)) triple3) -> (rule4 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Fiona is not cold.
Unknown
inv-rconc
[@1: Fiona is cold.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Fiona" "is" "cold" "-")
Bob is cold.
Unknown
rconc
[@1: Bob is cold.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Bob" "is" "cold" "+")
Fiona is not blue.
Unknown
inv-rconc
[@1: Fiona is blue.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Fiona" "is" "blue" "-")
Bob is smart.
Unknown
random
[@0: Bob is smart.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "smart" "+")
Fiona is not young.
Unknown
inv-random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "-")
Fiona is green.
Unknown
random
[@0: Fiona is green.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "green" "+")
@0: Bob is not green.[(triple1)] Bob is not young.[(triple3)] Bob is round.[(triple2)] Dave is blue.[(triple4)] Dave is cold.[(triple5 OR ((triple9) -> rule6))] Dave is not green.[(triple6)] Dave is round.[(triple7)] Dave is smart.[(triple8)] Dave is young.[(triple9)] Fiona is round.[(triple10)] @1: Bob is white.[(((triple2) -> rule1))] Dave is white.[(((triple7) -> rule1))] Fiona is white.[(((triple10) -> rule1))] @2: Bob is blue.[(((((triple2) -> rule1) triple3) -> rule4))]
Bob is not green.
("Bob" "is" "green" "-")
triple1
Bob is not young.
("Bob" "is" "young" "-")
triple3
Bob is round.
("Bob" "is" "round" "+")
triple2
Dave is blue.
("Dave" "is" "blue" "+")
triple4
Dave is cold.
("Dave" "is" "cold" "+")
triple5
((triple9) -> (rule6 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is not green.
("Dave" "is" "green" "-")
triple6
Dave is round.
("Dave" "is" "round" "+")
triple7
Dave is smart.
("Dave" "is" "smart" "+")
triple8
Dave is young.
("Dave" "is" "young" "+")
triple9
Fiona is round.
("Fiona" "is" "round" "+")
triple10
Bob is white.
("Bob" "is" "white" "+")
((triple2) -> (rule1 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
((triple7) -> (rule1 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
((triple10) -> (rule1 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
((((triple2) -> (rule1 % int2)) triple3) -> (rule4 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2