Fiona is furry. All furry things are round. If Fiona is round then Fiona is not nice. If Fiona is round and Fiona is not smart then Fiona is young.
Fiona is furry.
("Fiona" "is" "furry" "+")
All furry things are round.
((("something" "is" "furry" "+")) -> ("something" "is" "round" "+"))
If Fiona is round then Fiona is not nice.
((("Fiona" "is" "round" "+")) -> ("Fiona" "is" "nice" "-"))
If Fiona is round and Fiona is not smart then Fiona is young.
((("Fiona" "is" "round" "+") ("Fiona" "is" "smart" "~")) -> ("Fiona" "is" "young" "+"))
Fiona is furry.
True
1
proof
[(triple1)]
("Fiona" "is" "furry" "+")
triple1
Fiona is not furry.
False
1
inv-proof
[(triple1)]
("Fiona" "is" "furry" "-")
triple1
Fiona is round.
True
2
proof
[(((triple1) -> rule1))]
("Fiona" "is" "round" "+")
((triple1) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is not round.
False
2
inv-proof
[(((triple1) -> rule1))]
("Fiona" "is" "round" "-")
((triple1) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is not nice.
True
3
proof
[(((((triple1) -> rule1)) -> rule2))]
("Fiona" "is" "nice" "-")
((((triple1) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is not nice.
("Fiona" "is" "nice" "-")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is nice.
False
3
inv-proof
[(((((triple1) -> rule1)) -> rule2))]
("Fiona" "is" "nice" "+")
((((triple1) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is not nice.
("Fiona" "is" "nice" "-")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is not young.
Unknown
inv-rconc
[@1: Fiona is young.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Fiona" "is" "young" "-")
Fiona is rough.
Unknown
random
[@0: Fiona is rough.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "rough" "+")
Fiona is not big.
Unknown
inv-random
[@0: Fiona is big.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "big" "-")
Fiona is smart.
Unknown
random
[@0: Fiona is smart.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "smart" "+")
@0: Fiona is furry.[(triple1)] @1: Fiona is round.[(((triple1) -> rule1))] @2: Fiona is not nice.[(((((triple1) -> rule1)) -> rule2))]
Fiona is furry.
("Fiona" "is" "furry" "+")
triple1
Fiona is round.
("Fiona" "is" "round" "+")
((triple1) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is not nice.
("Fiona" "is" "nice" "-")
((((triple1) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is not nice.
("Fiona" "is" "nice" "-")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2