Bob is cold. Erin is cold. Erin is kind. Gary is kind. Gary is rough. Gary is round. Gary is young. Harry is not kind. Harry is round. Harry is young. If someone is young and cold then they are furry. All cold people are young. If someone is cold and kind then they are round. If Harry is quiet and Harry is cold then Harry is round. If someone is quiet then they are kind. If Gary is quiet then Gary is not cold. Furry people are quiet.
Bob is cold.
("Bob" "is" "cold" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is young.
("Gary" "is" "young" "+")
Harry is not kind.
("Harry" "is" "kind" "-")
Harry is round.
("Harry" "is" "round" "+")
Harry is young.
("Harry" "is" "young" "+")
If someone is young and cold then they are furry.
((("someone" "is" "young" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "furry" "+"))
All cold people are young.
((("someone" "is" "cold" "+")) -> ("someone" "is" "young" "+"))
If someone is cold and kind then they are round.
((("someone" "is" "cold" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "round" "+"))
If Harry is quiet and Harry is cold then Harry is round.
((("Harry" "is" "quiet" "+") ("Harry" "is" "cold" "+")) -> ("Harry" "is" "round" "+"))
If someone is quiet then they are kind.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "kind" "+"))
If Gary is quiet then Gary is not cold.
((("Gary" "is" "quiet" "+")) -> ("Gary" "is" "cold" "-"))
Furry people are quiet.
((("someone" "is" "furry" "+")) -> ("someone" "is" "quiet" "+"))
Harry is round.
True
1
proof
[(triple9)]
("Harry" "is" "round" "+")
triple9
Gary is not rough.
False
1
inv-proof
[(triple5)]
("Gary" "is" "rough" "-")
triple5
Erin is young.
True
2
proof
[(((triple2) -> rule2))]
("Erin" "is" "young" "+")
((triple2) -> (rule2 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is not round.
False
3
inv-proof
[(((triple2 triple3) -> rule3) OR ((triple2 ((((((((triple2) -> rule2) triple2) -> rule1)) -> rule7)) -> rule5)) -> rule3))]
("Erin" "is" "round" "-")
((triple2 triple3) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
((triple2 ((((((((triple2) -> (rule2 % int5)) triple2) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2
Erin is quiet.
("Erin" "is" "quiet" "+")
int3
Erin is furry.
("Erin" "is" "furry" "+")
int4
Erin is young.
("Erin" "is" "young" "+")
int5
Bob is furry.
True
4
proof
[(((((triple1) -> rule2) triple1) -> rule1))]
("Bob" "is" "furry" "+")
((((triple1) -> (rule2 % int2)) triple1) -> (rule1 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Erin is not furry.
False
4
inv-proof
[(((((triple2) -> rule2) triple2) -> rule1))]
("Erin" "is" "furry" "-")
((((triple2) -> (rule2 % int2)) triple2) -> (rule1 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is quiet.
True
5
proof
[(((((((triple2) -> rule2) triple2) -> rule1)) -> rule7))]
("Erin" "is" "quiet" "+")
((((((triple2) -> (rule2 % int3)) triple2) -> (rule1 % int2))) -> (rule7 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
int3
Erin is not quiet.
False
5
inv-proof
[(((((((triple2) -> rule2) triple2) -> rule1)) -> rule7))]
("Erin" "is" "quiet" "-")
((((((triple2) -> (rule2 % int3)) triple2) -> (rule1 % int2))) -> (rule7 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
int3
Bob is kind.
True
6
proof
[(((((((((triple1) -> rule2) triple1) -> rule1)) -> rule7)) -> rule5))]
("Bob" "is" "kind" "+")
((((((((triple1) -> (rule2 % int4)) triple1) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule5 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is furry.
("Bob" "is" "furry" "+")
int3
Bob is young.
("Bob" "is" "young" "+")
int4
Bob is not kind.
False
6
inv-proof
[(((((((((triple1) -> rule2) triple1) -> rule1)) -> rule7)) -> rule5))]
("Bob" "is" "kind" "-")
((((((((triple1) -> (rule2 % int4)) triple1) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule5 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is furry.
("Bob" "is" "furry" "+")
int3
Bob is young.
("Bob" "is" "young" "+")
int4
Bob is round.
True
8
proof
[(((triple1 ((((((((triple1) -> rule2) triple1) -> rule1)) -> rule7)) -> rule5)) -> rule3))]
("Bob" "is" "round" "+")
((triple1 ((((((((triple1) -> (rule2 % int5)) triple1) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
int3
Bob is furry.
("Bob" "is" "furry" "+")
int4
Bob is young.
("Bob" "is" "young" "+")
int5
Bob is not round.
False
8
inv-proof
[(((triple1 ((((((((triple1) -> rule2) triple1) -> rule1)) -> rule7)) -> rule5)) -> rule3))]
("Bob" "is" "round" "-")
((triple1 ((((((((triple1) -> (rule2 % int5)) triple1) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
int3
Bob is furry.
("Bob" "is" "furry" "+")
int4
Bob is young.
("Bob" "is" "young" "+")
int5
Harry is not furry.
Unknown
inv-rconc
[@1: Harry is furry.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Harry" "is" "furry" "-")
Gary is quiet.
Unknown
rconc
[@2: Gary is quiet.[CWA. Example of deepest failure = (rule7 <- rule1 <- FAIL)]]
("Gary" "is" "quiet" "+")
Gary is not furry.
Unknown
inv-rconc
[@1: Gary is furry.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Gary" "is" "furry" "-")
Harry is quiet.
Unknown
rconc
[@2: Harry is quiet.[CWA. Example of deepest failure = (rule7 <- rule1 <- FAIL)]]
("Harry" "is" "quiet" "+")
Harry is not rough.
Unknown
inv-random
[@0: Harry is rough.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "rough" "-")
Gary is cold.
Unknown
random
[@0: Gary is cold.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "cold" "+")
Bob is not rough.
Unknown
inv-random
[@0: Bob is rough.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "rough" "-")
Erin is rough.
Unknown
random
[@0: Erin is rough.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "rough" "+")
@0: Bob is cold.[(triple1)] Erin is cold.[(triple2)] Erin is kind.[(triple3 OR ((((((((triple2) -> rule2) triple2) -> rule1)) -> rule7)) -> rule5))] Gary is kind.[(triple4)] Gary is rough.[(triple5)] Gary is round.[(triple6)] Gary is young.[(triple7)] Harry is not kind.[(triple8)] Harry is round.[(triple9)] Harry is young.[(triple10)] @1: Bob is young.[(((triple1) -> rule2))] Erin is round.[(((triple2 triple3) -> rule3) OR ((triple2 ((((((((triple2) -> rule2) triple2) -> rule1)) -> rule7)) -> rule5)) -> rule3))] Erin is young.[(((triple2) -> rule2))] @2: Bob is furry.[(((((triple1) -> rule2) triple1) -> rule1))] Erin is furry.[(((((triple2) -> rule2) triple2) -> rule1))] @3: Bob is quiet.[(((((((triple1) -> rule2) triple1) -> rule1)) -> rule7))] Erin is quiet.[(((((((triple2) -> rule2) triple2) -> rule1)) -> rule7))] @4: Bob is kind.[(((((((((triple1) -> rule2) triple1) -> rule1)) -> rule7)) -> rule5))] @5: Bob is round.[(((triple1 ((((((((triple1) -> rule2) triple1) -> rule1)) -> rule7)) -> rule5)) -> rule3))]
Bob is cold.
("Bob" "is" "cold" "+")
triple1
Erin is cold.
("Erin" "is" "cold" "+")
triple2
Erin is kind.
("Erin" "is" "kind" "+")
triple3
((((((((triple2) -> (rule2 % int4)) triple2) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule5 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is furry.
("Erin" "is" "furry" "+")
int3
Erin is young.
("Erin" "is" "young" "+")
int4
Gary is kind.
("Gary" "is" "kind" "+")
triple4
Gary is rough.
("Gary" "is" "rough" "+")
triple5
Gary is round.
("Gary" "is" "round" "+")
triple6
Gary is young.
("Gary" "is" "young" "+")
triple7
Harry is not kind.
("Harry" "is" "kind" "-")
triple8
Harry is round.
("Harry" "is" "round" "+")
triple9
Harry is young.
("Harry" "is" "young" "+")
triple10
Bob is young.
("Bob" "is" "young" "+")
((triple1) -> (rule2 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
((triple2 triple3) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
((triple2 ((((((((triple2) -> (rule2 % int5)) triple2) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2
Erin is quiet.
("Erin" "is" "quiet" "+")
int3
Erin is furry.
("Erin" "is" "furry" "+")
int4
Erin is young.
("Erin" "is" "young" "+")
int5
Erin is young.
("Erin" "is" "young" "+")
((triple2) -> (rule2 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Bob is furry.
("Bob" "is" "furry" "+")
((((triple1) -> (rule2 % int2)) triple1) -> (rule1 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Erin is furry.
("Erin" "is" "furry" "+")
((((triple2) -> (rule2 % int2)) triple2) -> (rule1 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
((((((triple1) -> (rule2 % int3)) triple1) -> (rule1 % int2))) -> (rule7 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is furry.
("Bob" "is" "furry" "+")
int2
Bob is young.
("Bob" "is" "young" "+")
int3
Erin is quiet.
("Erin" "is" "quiet" "+")
((((((triple2) -> (rule2 % int3)) triple2) -> (rule1 % int2))) -> (rule7 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
int3
Bob is kind.
("Bob" "is" "kind" "+")
((((((((triple1) -> (rule2 % int4)) triple1) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule5 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is furry.
("Bob" "is" "furry" "+")
int3
Bob is young.
("Bob" "is" "young" "+")
int4
Bob is round.
("Bob" "is" "round" "+")
((triple1 ((((((((triple1) -> (rule2 % int5)) triple1) -> (rule1 % int4))) -> (rule7 % int3))) -> (rule5 % int2))) -> (rule3 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
int3
Bob is furry.
("Bob" "is" "furry" "+")
int4
Bob is young.
("Bob" "is" "young" "+")
int5