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