Bob is round. Charlie is white. Charlie is young. Dave is round. Dave is smart. Fiona is quiet. Fiona is young. All young things are smart. All nice things are smart. If Bob is nice and Bob is young then Bob is smart. If something is young and white then it is big. If Dave is round then Dave is white. If something is smart and quiet then it is white.
Bob is round.
("Bob" "is" "round" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Dave is round.
("Dave" "is" "round" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Fiona is young.
("Fiona" "is" "young" "+")
All young things are smart.
((("something" "is" "young" "+")) -> ("something" "is" "smart" "+"))
All nice things are smart.
((("something" "is" "nice" "+")) -> ("something" "is" "smart" "+"))
If Bob is nice and Bob is young then Bob is smart.
((("Bob" "is" "nice" "+") ("Bob" "is" "young" "+")) -> ("Bob" "is" "smart" "+"))
If something is young and white then it is big.
((("something" "is" "young" "+") ("something" "is" "white" "+")) -> ("something" "is" "big" "+"))
If Dave is round then Dave is white.
((("Dave" "is" "round" "+")) -> ("Dave" "is" "white" "+"))
If something is smart and quiet then it is white.
((("something" "is" "smart" "+") ("something" "is" "quiet" "+")) -> ("something" "is" "white" "+"))
Dave is smart.
True
1
proof
[(triple5)]
("Dave" "is" "smart" "+")
triple5
Bob is not round.
False
1
inv-proof
[(triple1)]
("Bob" "is" "round" "-")
triple1
Dave is white.
True
2
proof
[(((triple4) -> rule5))]
("Dave" "is" "white" "+")
((triple4) -> (rule5 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Charlie is not big.
False
3
inv-proof
[(((triple3 triple2) -> rule4))]
("Charlie" "is" "big" "-")
((triple3 triple2) -> (rule4 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Fiona is white.
True
4
proof
[(((((triple7) -> rule1) triple6) -> rule6))]
("Fiona" "is" "white" "+")
((((triple7) -> (rule1 % int2)) triple6) -> (rule6 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is not white.
False
4
inv-proof
[(((((triple7) -> rule1) triple6) -> rule6))]
("Fiona" "is" "white" "-")
((((triple7) -> (rule1 % int2)) triple6) -> (rule6 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is big.
True
6
proof
[(((triple7 ((((triple7) -> rule1) triple6) -> rule6)) -> rule4))]
("Fiona" "is" "big" "+")
((triple7 ((((triple7) -> (rule1 % int3)) triple6) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Fiona is not big.
False
6
inv-proof
[(((triple7 ((((triple7) -> rule1) triple6) -> rule6)) -> rule4))]
("Fiona" "is" "big" "-")
((triple7 ((((triple7) -> (rule1 % int3)) triple6) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Bob is not big.
Unknown
inv-rconc
[@1: Bob is big.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Bob" "is" "big" "-")
Bob is smart.
Unknown
rconc
[@1: Bob is smart.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Bob" "is" "smart" "+")
Dave is not big.
Unknown
inv-rconc
[@1: Dave is big.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Dave" "is" "big" "-")
Bob is white.
Unknown
rconc
[@1: Bob is white.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Bob" "is" "white" "+")
Fiona is not nice.
Unknown
inv-random
[@0: Fiona is nice.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "nice" "-")
Charlie is quiet.
Unknown
random
[@0: Charlie is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "quiet" "+")
Dave is not nice.
Unknown
inv-random
[@0: Dave is nice.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "nice" "-")
Charlie is round.
Unknown
random
[@0: Charlie is round.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "round" "+")
@0: Bob is round.[(triple1)] Charlie is white.[(triple2)] Charlie is young.[(triple3)] Dave is round.[(triple4)] Dave is smart.[(triple5)] Fiona is quiet.[(triple6)] Fiona is young.[(triple7)] @1: Charlie is big.[(((triple3 triple2) -> rule4))] Charlie is smart.[(((triple3) -> rule1))] Dave is white.[(((triple4) -> rule5))] Fiona is smart.[(((triple7) -> rule1))] @2: Fiona is white.[(((((triple7) -> rule1) triple6) -> rule6))] @3: Fiona is big.[(((triple7 ((((triple7) -> rule1) triple6) -> rule6)) -> rule4))]
Bob is round.
("Bob" "is" "round" "+")
triple1
Charlie is white.
("Charlie" "is" "white" "+")
triple2
Charlie is young.
("Charlie" "is" "young" "+")
triple3
Dave is round.
("Dave" "is" "round" "+")
triple4
Dave is smart.
("Dave" "is" "smart" "+")
triple5
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple6
Fiona is young.
("Fiona" "is" "young" "+")
triple7
Charlie is big.
("Charlie" "is" "big" "+")
((triple3 triple2) -> (rule4 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
((triple3) -> (rule1 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
((triple4) -> (rule5 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
((triple7) -> (rule1 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
((((triple7) -> (rule1 % int2)) triple6) -> (rule6 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
((triple7 ((((triple7) -> (rule1 % int3)) triple6) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3