Bob is smart. Charlie is cold. Dave is green. Fiona is cold. All nice things are big. If something is green then it is smart. If Dave is green and Dave is smart then Dave is cold. All green things are big. If Charlie is white then Charlie is cold. Smart things are nice.
Bob is smart.
("Bob" "is" "smart" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Dave is green.
("Dave" "is" "green" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
All nice things are big.
((("something" "is" "nice" "+")) -> ("something" "is" "big" "+"))
If something is green then it is smart.
((("something" "is" "green" "+")) -> ("something" "is" "smart" "+"))
If Dave is green and Dave is smart then Dave is cold.
((("Dave" "is" "green" "+") ("Dave" "is" "smart" "+")) -> ("Dave" "is" "cold" "+"))
All green things are big.
((("something" "is" "green" "+")) -> ("something" "is" "big" "+"))
If Charlie is white then Charlie is cold.
((("Charlie" "is" "white" "+")) -> ("Charlie" "is" "cold" "+"))
Smart things are nice.
((("something" "is" "smart" "+")) -> ("something" "is" "nice" "+"))
Charlie is cold.
True
1
proof
[(triple2)]
("Charlie" "is" "cold" "+")
triple2
Fiona is not cold.
False
1
inv-proof
[(triple4)]
("Fiona" "is" "cold" "-")
triple4
Dave is smart.
True
2
proof
[(((triple3) -> rule2))]
("Dave" "is" "smart" "+")
((triple3) -> (rule2 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is not big.
False
2
inv-proof
[(((triple3) -> rule4) OR ((((((triple3) -> rule2)) -> rule6)) -> rule1))]
("Dave" "is" "big" "-")
((triple3) -> (rule4 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
((((((triple3) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Dave is smart.
("Dave" "is" "smart" "+")
int3
Fiona is not nice.
Unknown
inv-rconc
[@2: Fiona is nice.[CWA. Example of deepest failure = (rule6 <- rule2 <- FAIL)]]
("Fiona" "is" "nice" "-")
Charlie is nice.
Unknown
rconc
[@2: Charlie is nice.[CWA. Example of deepest failure = (rule6 <- rule2 <- FAIL)]]
("Charlie" "is" "nice" "+")
Fiona is not green.
Unknown
inv-random
[@0: Fiona is green.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "green" "-")
Fiona is white.
Unknown
random
[@0: Fiona is white.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "white" "+")
@0: Bob is smart.[(triple1)] Charlie is cold.[(triple2)] Dave is green.[(triple3)] Fiona is cold.[(triple4)] @1: Bob is nice.[(((triple1) -> rule6))] Dave is big.[(((triple3) -> rule4) OR ((((((triple3) -> rule2)) -> rule6)) -> rule1))] Dave is smart.[(((triple3) -> rule2))] @2: Bob is big.[(((((triple1) -> rule6)) -> rule1))] Dave is cold.[(((triple3 ((triple3) -> rule2)) -> rule3))] Dave is nice.[(((((triple3) -> rule2)) -> rule6))]
Bob is smart.
("Bob" "is" "smart" "+")
triple1
Charlie is cold.
("Charlie" "is" "cold" "+")
triple2
Dave is green.
("Dave" "is" "green" "+")
triple3
Fiona is cold.
("Fiona" "is" "cold" "+")
triple4
Bob is nice.
("Bob" "is" "nice" "+")
((triple1) -> (rule6 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
((triple3) -> (rule4 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
((((((triple3) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Dave is smart.
("Dave" "is" "smart" "+")
int3
Dave is smart.
("Dave" "is" "smart" "+")
((triple3) -> (rule2 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
((((triple1) -> (rule6 % int2))) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
((triple3 ((triple3) -> (rule2 % int2))) -> (rule3 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2
Dave is nice.
("Dave" "is" "nice" "+")
((((triple3) -> (rule2 % int2))) -> (rule6 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2