Dave is furry. Erin is kind. Fiona is not nice. If Fiona is blue then Fiona is young. All young people are big. If someone is blue and furry then they are big. Furry people are young. Young people are furry. Kind people are furry. If someone is young and not big then they are not rough. If someone is rough and not kind then they are not nice.
Dave is furry.
("Dave" "is" "furry" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Fiona is not nice.
("Fiona" "is" "nice" "-")
If Fiona is blue then Fiona is young.
((("Fiona" "is" "blue" "+")) -> ("Fiona" "is" "young" "+"))
All young people are big.
((("someone" "is" "young" "+")) -> ("someone" "is" "big" "+"))
If someone is blue and furry then they are big.
((("someone" "is" "blue" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "big" "+"))
Furry people are young.
((("someone" "is" "furry" "+")) -> ("someone" "is" "young" "+"))
Young people are furry.
((("someone" "is" "young" "+")) -> ("someone" "is" "furry" "+"))
Kind people are furry.
((("someone" "is" "kind" "+")) -> ("someone" "is" "furry" "+"))
If someone is young and not big then they are not rough.
((("someone" "is" "young" "+") ("someone" "is" "big" "~")) -> ("someone" "is" "rough" "-"))
If someone is rough and not kind then they are not nice.
((("someone" "is" "rough" "+") ("someone" "is" "kind" "~")) -> ("someone" "is" "nice" "-"))
Fiona is not nice.
True
1
proof
[(triple3)]
("Fiona" "is" "nice" "-")
triple3
Erin is not kind.
False
1
inv-proof
[(triple2)]
("Erin" "is" "kind" "-")
triple2
Erin is furry.
True
2
proof
[(((triple2) -> rule6))]
("Erin" "is" "furry" "+")
((triple2) -> (rule6 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Dave is not young.
False
2
inv-proof
[(((triple1) -> rule4))]
("Dave" "is" "young" "-")
((triple1) -> (rule4 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Erin is young.
True
3
proof
[(((((triple2) -> rule6)) -> rule4))]
("Erin" "is" "young" "+")
((((triple2) -> (rule6 % int2))) -> (rule4 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Erin is not young.
False
3
inv-proof
[(((((triple2) -> rule6)) -> rule4))]
("Erin" "is" "young" "-")
((((triple2) -> (rule6 % int2))) -> (rule4 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Erin is big.
True
4
proof
[(((((((triple2) -> rule6)) -> rule4)) -> rule2))]
("Erin" "is" "big" "+")
((((((triple2) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is furry.
("Erin" "is" "furry" "+")
int3
Erin is not big.
False
4
inv-proof
[(((((((triple2) -> rule6)) -> rule4)) -> rule2))]
("Erin" "is" "big" "-")
((((((triple2) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is furry.
("Erin" "is" "furry" "+")
int3
Fiona is not young.
Unknown
inv-rconc
[@3: Fiona is young.[CWA. Example of deepest failure = (rule4 <- rule5 <- rule1 <- FAIL)]]
("Fiona" "is" "young" "-")
Fiona is furry.
Unknown
rconc
[@3: Fiona is furry.[CWA. Example of deepest failure = (rule5 <- rule4 <- rule6 <- FAIL)]]
("Fiona" "is" "furry" "+")
Fiona is not big.
Unknown
inv-rconc
[@4: Fiona is big.[CWA. Example of deepest failure = (rule2 <- rule4 <- rule5 <- rule1 <- FAIL)]]
("Fiona" "is" "big" "-")
Fiona is blue.
Unknown
random
[@0: Fiona is blue.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "blue" "+")
Dave is not blue.
Unknown
inv-random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "-")
Erin is nice.
Unknown
random
[@0: Erin is nice.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "nice" "+")
Erin is not blue.
Unknown
inv-random
[@0: Erin is blue.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "blue" "-")
Fiona is rough.
Unknown
random
[@0: Fiona is rough.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "rough" "+")
@0: Dave is furry.[(triple1)] Erin is kind.[(triple2)] Fiona is not nice.[(triple3)] @1: Dave is young.[(((triple1) -> rule4))] Erin is furry.[(((triple2) -> rule6))] @2: Dave is big.[(((((triple1) -> rule4)) -> rule2))] Erin is young.[(((((triple2) -> rule6)) -> rule4))] @3: Erin is big.[(((((((triple2) -> rule6)) -> rule4)) -> rule2))]
Dave is furry.
("Dave" "is" "furry" "+")
triple1
Erin is kind.
("Erin" "is" "kind" "+")
triple2
Fiona is not nice.
("Fiona" "is" "nice" "-")
triple3
Dave is young.
("Dave" "is" "young" "+")
((triple1) -> (rule4 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
((triple2) -> (rule6 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
((((triple1) -> (rule4 % int2))) -> (rule2 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
((((triple2) -> (rule6 % int2))) -> (rule4 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
((((((triple2) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is furry.
("Erin" "is" "furry" "+")
int3