Bob is young. Dave is red. Dave is rough. Gary is furry. Gary is green. Gary is rough. Gary is white. All round, rough things are green. All white, red things are rough. All young, green things are round. Green, rough things are white. Rough, furry things are young. Furry things are white.
Bob is young.
("Bob" "is" "young" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is white.
("Gary" "is" "white" "+")
All round, rough things are green.
((("something" "is" "round" "+") ("something" "is" "rough" "+")) -> ("something" "is" "green" "+"))
All white, red things are rough.
((("something" "is" "white" "+") ("something" "is" "red" "+")) -> ("something" "is" "rough" "+"))
All young, green things are round.
((("something" "is" "young" "+") ("something" "is" "green" "+")) -> ("something" "is" "round" "+"))
Green, rough things are white.
((("something" "is" "green" "+") ("something" "is" "rough" "+")) -> ("something" "is" "white" "+"))
Rough, furry things are young.
((("something" "is" "rough" "+") ("something" "is" "furry" "+")) -> ("something" "is" "young" "+"))
Furry things are white.
((("something" "is" "furry" "+")) -> ("something" "is" "white" "+"))
Gary is green.
True
1
proof
[(triple5)]
("Gary" "is" "green" "+")
triple5
Dave is not rough.
False
1
inv-proof
[(triple3)]
("Dave" "is" "rough" "-")
triple3
Gary is young.
True
3
proof
[(((triple6 triple4) -> rule5))]
("Gary" "is" "young" "+")
((triple6 triple4) -> (rule5 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is not young.
False
3
inv-proof
[(((triple6 triple4) -> rule5))]
("Gary" "is" "young" "-")
((triple6 triple4) -> (rule5 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is round.
True
5
proof
[(((((triple6 triple4) -> rule5) triple5) -> rule3))]
("Gary" "is" "round" "+")
((((triple6 triple4) -> (rule5 % int2)) triple5) -> (rule3 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is not round.
False
5
inv-proof
[(((((triple6 triple4) -> rule5) triple5) -> rule3))]
("Gary" "is" "round" "-")
((((triple6 triple4) -> (rule5 % int2)) triple5) -> (rule3 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Bob is not green.
Unknown
inv-rconc
[@2: Bob is green.[CWA. Example of deepest failure = (rule1 <- rule3 <- FAIL)]]
("Bob" "is" "green" "-")
Dave is round.
Unknown
rconc
[@2: Dave is round.[CWA. Example of deepest failure = (rule3 <- rule5 <- FAIL)]]
("Dave" "is" "round" "+")
Bob is not rough.
Unknown
inv-rconc
[@1: Bob is rough.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Bob" "is" "rough" "-")
Dave is furry.
Unknown
random
[@0: Dave is furry.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "furry" "+")
Gary is not red.
Unknown
inv-random
[@0: Gary is red.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "red" "-")
Bob is red.
Unknown
random
[@0: Bob is red.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "red" "+")
@0: Bob is young.[(triple1)] Dave is red.[(triple2)] Dave is rough.[(triple3)] Gary is furry.[(triple4)] Gary is green.[(triple5)] Gary is rough.[(triple6)] Gary is white.[(triple7 OR ((triple4) -> rule6) OR ((triple5 triple6) -> rule4))] @1: Gary is young.[(((triple6 triple4) -> rule5))] @2: Gary is round.[(((((triple6 triple4) -> rule5) triple5) -> rule3))]
Bob is young.
("Bob" "is" "young" "+")
triple1
Dave is red.
("Dave" "is" "red" "+")
triple2
Dave is rough.
("Dave" "is" "rough" "+")
triple3
Gary is furry.
("Gary" "is" "furry" "+")
triple4
Gary is green.
("Gary" "is" "green" "+")
triple5
Gary is rough.
("Gary" "is" "rough" "+")
triple6
Gary is white.
("Gary" "is" "white" "+")
triple7
((triple4) -> (rule6 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
((triple5 triple6) -> (rule4 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
((triple6 triple4) -> (rule5 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
((((triple6 triple4) -> (rule5 % int2)) triple5) -> (rule3 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2