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