Bob is big. Dave is furry. Erin is rough. Fiona is rough. If someone is furry then they are cold. Rough people are young. All young people are rough. If someone is red then they are rough. All quiet, big people are young. If someone is young and big then they are cold. Furry people are young. If Fiona is rough and Fiona is red then Fiona is young.
Bob is big.
("Bob" "is" "big" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
If someone is furry then they are cold.
((("someone" "is" "furry" "+")) -> ("someone" "is" "cold" "+"))
Rough people are young.
((("someone" "is" "rough" "+")) -> ("someone" "is" "young" "+"))
All young people are rough.
((("someone" "is" "young" "+")) -> ("someone" "is" "rough" "+"))
If someone is red then they are rough.
((("someone" "is" "red" "+")) -> ("someone" "is" "rough" "+"))
All quiet, big people are young.
((("someone" "is" "quiet" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "young" "+"))
If someone is young and big then they are cold.
((("someone" "is" "young" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "cold" "+"))
Furry people are young.
((("someone" "is" "furry" "+")) -> ("someone" "is" "young" "+"))
If Fiona is rough and Fiona is red then Fiona is young.
((("Fiona" "is" "rough" "+") ("Fiona" "is" "red" "+")) -> ("Fiona" "is" "young" "+"))
Dave is furry.
True
1
proof
[(triple2)]
("Dave" "is" "furry" "+")
triple2
Bob is not big.
False
1
inv-proof
[(triple1)]
("Bob" "is" "big" "-")
triple1
Erin is not cold.
Unknown
inv-rconc
[@1: Erin is cold.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Erin" "is" "cold" "-")
Bob is furry.
Unknown
random
[@0: Bob is furry.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "furry" "+")
@0: Bob is big.[(triple1)] Dave is furry.[(triple2)] Erin is rough.[(triple3)] Fiona is rough.[(triple4)] @1: Dave is cold.[(((triple2) -> rule1))] Dave is young.[(((triple2) -> rule7))] Erin is young.[(((triple3) -> rule2))] Fiona is young.[(((triple4) -> rule2))] @2: Dave is rough.[(((((triple2) -> rule7)) -> rule3))]
Bob is big.
("Bob" "is" "big" "+")
triple1
Dave is furry.
("Dave" "is" "furry" "+")
triple2
Erin is rough.
("Erin" "is" "rough" "+")
triple3
Fiona is rough.
("Fiona" "is" "rough" "+")
triple4
Dave is cold.
("Dave" "is" "cold" "+")
((triple2) -> (rule1 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
((triple2) -> (rule7 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
((triple3) -> (rule2 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
((triple4) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
((((triple2) -> (rule7 % int2))) -> (rule3 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2