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