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