Dave is big. Dave is young. Fiona is rough. If something is rough then it is young. All furry things are rough. If Dave is green and Dave is furry then Dave is rough. If something is rough then it is quiet. If Dave is young and Dave is quiet then Dave is green. Big, rough things are round. All young, quiet things are green. Young, rough things are green.
Dave is big.
("Dave" "is" "big" "+")
Dave is young.
("Dave" "is" "young" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
If something is rough then it is young.
((("something" "is" "rough" "+")) -> ("something" "is" "young" "+"))
All furry things are rough.
((("something" "is" "furry" "+")) -> ("something" "is" "rough" "+"))
If Dave is green and Dave is furry then Dave is rough.
((("Dave" "is" "green" "+") ("Dave" "is" "furry" "+")) -> ("Dave" "is" "rough" "+"))
If something is rough then it is quiet.
((("something" "is" "rough" "+")) -> ("something" "is" "quiet" "+"))
If Dave is young and Dave is quiet then Dave is green.
((("Dave" "is" "young" "+") ("Dave" "is" "quiet" "+")) -> ("Dave" "is" "green" "+"))
Big, rough things are round.
((("something" "is" "big" "+") ("something" "is" "rough" "+")) -> ("something" "is" "round" "+"))
All young, quiet things are green.
((("something" "is" "young" "+") ("something" "is" "quiet" "+")) -> ("something" "is" "green" "+"))
Young, rough things are green.
((("something" "is" "young" "+") ("something" "is" "rough" "+")) -> ("something" "is" "green" "+"))
Dave is big.
True
1
proof
[(triple1)]
("Dave" "is" "big" "+")
triple1
Dave is not big.
False
1
inv-proof
[(triple1)]
("Dave" "is" "big" "-")
triple1
Fiona is quiet.
True
2
proof
[(((triple3) -> rule4))]
("Fiona" "is" "quiet" "+")
((triple3) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is not quiet.
False
2
inv-proof
[(((triple3) -> rule4))]
("Fiona" "is" "quiet" "-")
((triple3) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Dave is not round.
Unknown
inv-rconc
[@2: Dave is round.[CWA. Example of deepest failure = (rule6 <- rule2 <- FAIL)]]
("Dave" "is" "round" "-")
Dave is green.
Unknown
rconc
[@3: Dave is green.[CWA. Example of deepest failure = (rule5 <- rule4 <- rule2 <- FAIL)]]
("Dave" "is" "green" "+")
Dave is not furry.
Unknown
inv-random
[@0: Dave is furry.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "furry" "-")
Fiona is big.
Unknown
random
[@0: Fiona is big.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "big" "+")
@0: Dave is big.[(triple1)] Dave is young.[(triple2)] Fiona is rough.[(triple3)] @1: Fiona is quiet.[(((triple3) -> rule4))] Fiona is young.[(((triple3) -> rule1))] @2: Fiona is green.[(((((triple3) -> rule1) triple3) -> rule8) OR ((((triple3) -> rule1) ((triple3) -> rule4)) -> rule7))]
Dave is big.
("Dave" "is" "big" "+")
triple1
Dave is young.
("Dave" "is" "young" "+")
triple2
Fiona is rough.
("Fiona" "is" "rough" "+")
triple3
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((triple3) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
((triple3) -> (rule1 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
((((triple3) -> (rule1 % int2)) triple3) -> (rule8 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((((triple3) -> (rule1 % int3)) ((triple3) -> (rule4 % int2))) -> (rule7 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3