Bob is furry. If someone is furry then they are rough. All rough people are cold. If someone is cold and rough then they are smart. Rough, white people are round. Cold, rough people are round. If Bob is round and Bob is not rough then Bob is not cold.
Bob is furry.
("Bob" "is" "furry" "+")
If someone is furry then they are rough.
((("someone" "is" "furry" "+")) -> ("someone" "is" "rough" "+"))
All rough people are cold.
((("someone" "is" "rough" "+")) -> ("someone" "is" "cold" "+"))
If someone is cold and rough then they are smart.
((("someone" "is" "cold" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "smart" "+"))
Rough, white people are round.
((("someone" "is" "rough" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "round" "+"))
Cold, rough people are round.
((("someone" "is" "cold" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "round" "+"))
If Bob is round and Bob is not rough then Bob is not cold.
((("Bob" "is" "round" "+") ("Bob" "is" "rough" "~")) -> ("Bob" "is" "cold" "-"))
Bob is furry.
True
1
proof
[(triple1)]
("Bob" "is" "furry" "+")
triple1
Bob is not furry.
False
1
inv-proof
[(triple1)]
("Bob" "is" "furry" "-")
triple1
Bob is rough.
True
2
proof
[(((triple1) -> rule1))]
("Bob" "is" "rough" "+")
((triple1) -> (rule1 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is not rough.
False
2
inv-proof
[(((triple1) -> rule1))]
("Bob" "is" "rough" "-")
((triple1) -> (rule1 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is cold.
True
3
proof
[(((((triple1) -> rule1)) -> rule2))]
("Bob" "is" "cold" "+")
((((triple1) -> (rule1 % int2))) -> (rule2 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is not cold.
False
3
inv-proof
[(((((triple1) -> rule1)) -> rule2))]
("Bob" "is" "cold" "-")
((((triple1) -> (rule1 % int2))) -> (rule2 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is smart.
True
6
proof
[(((((((triple1) -> rule1)) -> rule2) ((triple1) -> rule1)) -> rule3))]
("Bob" "is" "smart" "+")
((((((triple1) -> (rule1 % int3))) -> (rule2 % int2)) ((triple1) -> (rule1 % int3))) -> (rule3 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
int3
Bob is not smart.
False
6
inv-proof
[(((((((triple1) -> rule1)) -> rule2) ((triple1) -> rule1)) -> rule3))]
("Bob" "is" "smart" "-")
((((((triple1) -> (rule1 % int3))) -> (rule2 % int2)) ((triple1) -> (rule1 % int3))) -> (rule3 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
int3
Bob is not quiet.
Unknown
inv-random
[@0: Bob is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "quiet" "-")
Bob is white.
Unknown
random
[@0: Bob is white.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "white" "+")
@0: Bob is furry.[(triple1)] @1: Bob is rough.[(((triple1) -> rule1))] @2: Bob is cold.[(((((triple1) -> rule1)) -> rule2))] @3: Bob is round.[(((((((triple1) -> rule1)) -> rule2) ((triple1) -> rule1)) -> rule5))] Bob is smart.[(((((((triple1) -> rule1)) -> rule2) ((triple1) -> rule1)) -> rule3))]
Bob is furry.
("Bob" "is" "furry" "+")
triple1
Bob is rough.
("Bob" "is" "rough" "+")
((triple1) -> (rule1 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
((((triple1) -> (rule1 % int2))) -> (rule2 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is round.
("Bob" "is" "round" "+")
((((((triple1) -> (rule1 % int3))) -> (rule2 % int2)) ((triple1) -> (rule1 % int3))) -> (rule5 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
int3
Bob is smart.
("Bob" "is" "smart" "+")
((((((triple1) -> (rule1 % int3))) -> (rule2 % int2)) ((triple1) -> (rule1 % int3))) -> (rule3 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
int3