Bob is green. Fiona is rough. Gary is rough. Harry is rough. If Gary is blue then Gary is cold. If Bob is furry and Bob is big then Bob is green. If someone is rough then they are big. If someone is big then they are rough. All green people are rough. If someone is blue and rough then they are big.
Bob is green.
("Bob" "is" "green" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Harry is rough.
("Harry" "is" "rough" "+")
If Gary is blue then Gary is cold.
((("Gary" "is" "blue" "+")) -> ("Gary" "is" "cold" "+"))
If Bob is furry and Bob is big then Bob is green.
((("Bob" "is" "furry" "+") ("Bob" "is" "big" "+")) -> ("Bob" "is" "green" "+"))
If someone is rough then they are big.
((("someone" "is" "rough" "+")) -> ("someone" "is" "big" "+"))
If someone is big then they are rough.
((("someone" "is" "big" "+")) -> ("someone" "is" "rough" "+"))
All green people are rough.
((("someone" "is" "green" "+")) -> ("someone" "is" "rough" "+"))
If someone is blue and rough then they are big.
((("someone" "is" "blue" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "big" "+"))
Gary is rough.
True
1
proof
[(triple3)]
("Gary" "is" "rough" "+")
triple3
Bob is not green.
False
1
inv-proof
[(triple1)]
("Bob" "is" "green" "-")
triple1
Gary is not cold.
Unknown
inv-rconc
[@1: Gary is cold.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Gary" "is" "cold" "-")
Harry is blue.
Unknown
random
[@0: Harry is blue.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "blue" "+")
@0: Bob is green.[(triple1)] Fiona is rough.[(triple2)] Gary is rough.[(triple3)] Harry is rough.[(triple4)] @1: Bob is rough.[(((triple1) -> rule5))] Fiona is big.[(((triple2) -> rule3))] Gary is big.[(((triple3) -> rule3))] Harry is big.[(((triple4) -> rule3))] @2: Bob is big.[(((((triple1) -> rule5)) -> rule3))]
Bob is green.
("Bob" "is" "green" "+")
triple1
Fiona is rough.
("Fiona" "is" "rough" "+")
triple2
Gary is rough.
("Gary" "is" "rough" "+")
triple3
Harry is rough.
("Harry" "is" "rough" "+")
triple4
Bob is rough.
("Bob" "is" "rough" "+")
((triple1) -> (rule5 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
((triple2) -> (rule3 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
((triple3) -> (rule3 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
((triple4) -> (rule3 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
((((triple1) -> (rule5 % int2))) -> (rule3 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2