Bob is kind. Dave is rough. Erin is nice. Harry is blue. All blue people are green. If Bob is smart and Bob is nice then Bob is kind. If Dave is smart and Dave is blue then Dave is rough. Kind, rough people are green. Rough people are kind. All rough, nice people are kind. If someone is rough and nice then they are smart. If someone is nice then they are kind.
Bob is kind.
("Bob" "is" "kind" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Harry is blue.
("Harry" "is" "blue" "+")
All blue people are green.
((("someone" "is" "blue" "+")) -> ("someone" "is" "green" "+"))
If Bob is smart and Bob is nice then Bob is kind.
((("Bob" "is" "smart" "+") ("Bob" "is" "nice" "+")) -> ("Bob" "is" "kind" "+"))
If Dave is smart and Dave is blue then Dave is rough.
((("Dave" "is" "smart" "+") ("Dave" "is" "blue" "+")) -> ("Dave" "is" "rough" "+"))
Kind, rough people are green.
((("someone" "is" "kind" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "green" "+"))
Rough people are kind.
((("someone" "is" "rough" "+")) -> ("someone" "is" "kind" "+"))
All rough, nice people are kind.
((("someone" "is" "rough" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "kind" "+"))
If someone is rough and nice then they are smart.
((("someone" "is" "rough" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "smart" "+"))
If someone is nice then they are kind.
((("someone" "is" "nice" "+")) -> ("someone" "is" "kind" "+"))
Bob is kind.
True
1
proof
[(triple1)]
("Bob" "is" "kind" "+")
triple1
Dave is not rough.
False
1
inv-proof
[(triple2)]
("Dave" "is" "rough" "-")
triple2
Harry is green.
True
2
proof
[(((triple4) -> rule1))]
("Harry" "is" "green" "+")
((triple4) -> (rule1 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Dave is not kind.
False
2
inv-proof
[(((triple2) -> rule5))]
("Dave" "is" "kind" "-")
((triple2) -> (rule5 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is green.
True
4
proof
[(((((triple2) -> rule5) triple2) -> rule4))]
("Dave" "is" "green" "+")
((((triple2) -> (rule5 % int2)) triple2) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Dave is not green.
False
4
inv-proof
[(((((triple2) -> rule5) triple2) -> rule4))]
("Dave" "is" "green" "-")
((((triple2) -> (rule5 % int2)) triple2) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Bob is not smart.
Unknown
inv-rconc
[@1: Bob is smart.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("Bob" "is" "smart" "-")
Bob is green.
Unknown
rconc
[@1: Bob is green.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Bob" "is" "green" "+")
Dave is not smart.
Unknown
inv-rconc
[@1: Dave is smart.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("Dave" "is" "smart" "-")
Bob is big.
Unknown
random
[@0: Bob is big.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "big" "+")
Harry is not big.
Unknown
inv-random
[@0: Harry is big.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "big" "-")
Dave is blue.
Unknown
random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "+")
@0: Bob is kind.[(triple1)] Dave is rough.[(triple2)] Erin is nice.[(triple3)] Harry is blue.[(triple4)] @1: Dave is kind.[(((triple2) -> rule5))] Erin is kind.[(((triple3) -> rule8))] Harry is green.[(((triple4) -> rule1))] @2: Dave is green.[(((((triple2) -> rule5) triple2) -> rule4))]
Bob is kind.
("Bob" "is" "kind" "+")
triple1
Dave is rough.
("Dave" "is" "rough" "+")
triple2
Erin is nice.
("Erin" "is" "nice" "+")
triple3
Harry is blue.
("Harry" "is" "blue" "+")
triple4
Dave is kind.
("Dave" "is" "kind" "+")
((triple2) -> (rule5 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
((triple3) -> (rule8 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
((triple4) -> (rule1 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
((((triple2) -> (rule5 % int2)) triple2) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2