Fiona is kind. Gary is kind. Harry is kind. All young, kind things are cold. If something is rough then it is young. All furry things are young. If Gary is furry then Gary is cold. All kind, cold things are green. Kind things are rough.
Fiona is kind.
("Fiona" "is" "kind" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Harry is kind.
("Harry" "is" "kind" "+")
All young, kind things are cold.
((("something" "is" "young" "+") ("something" "is" "kind" "+")) -> ("something" "is" "cold" "+"))
If something is rough then it is young.
((("something" "is" "rough" "+")) -> ("something" "is" "young" "+"))
All furry things are young.
((("something" "is" "furry" "+")) -> ("something" "is" "young" "+"))
If Gary is furry then Gary is cold.
((("Gary" "is" "furry" "+")) -> ("Gary" "is" "cold" "+"))
All kind, cold things are green.
((("something" "is" "kind" "+") ("something" "is" "cold" "+")) -> ("something" "is" "green" "+"))
Kind things are rough.
((("something" "is" "kind" "+")) -> ("something" "is" "rough" "+"))
Fiona is kind.
True
1
proof
[(triple1)]
("Fiona" "is" "kind" "+")
triple1
Gary is not kind.
False
1
inv-proof
[(triple2)]
("Gary" "is" "kind" "-")
triple2
Gary is rough.
True
2
proof
[(((triple2) -> rule6))]
("Gary" "is" "rough" "+")
((triple2) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is not rough.
False
2
inv-proof
[(((triple2) -> rule6))]
("Gary" "is" "rough" "-")
((triple2) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Fiona is young.
True
3
proof
[(((((triple1) -> rule6)) -> rule2))]
("Fiona" "is" "young" "+")
((((triple1) -> (rule6 % int2))) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Gary is not young.
False
3
inv-proof
[(((((triple2) -> rule6)) -> rule2))]
("Gary" "is" "young" "-")
((((triple2) -> (rule6 % int2))) -> (rule2 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Harry is cold.
True
5
proof
[(((((((triple3) -> rule6)) -> rule2) triple3) -> rule1))]
("Harry" "is" "cold" "+")
((((((triple3) -> (rule6 % int3))) -> (rule2 % int2)) triple3) -> (rule1 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Fiona is not cold.
False
5
inv-proof
[(((((((triple1) -> rule6)) -> rule2) triple1) -> rule1))]
("Fiona" "is" "cold" "-")
((((((triple1) -> (rule6 % int3))) -> (rule2 % int2)) triple1) -> (rule1 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
int3
Harry is not round.
Unknown
inv-random
[@0: Harry is round.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "round" "-")
Gary is furry.
Unknown
random
[@0: Gary is furry.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "furry" "+")
Harry is not furry.
Unknown
inv-random
[@0: Harry is furry.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "furry" "-")
Fiona is furry.
Unknown
random
[@0: Fiona is furry.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "furry" "+")
Fiona is not round.
Unknown
inv-random
[@0: Fiona is round.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "round" "-")
Gary is round.
Unknown
random
[@0: Gary is round.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "round" "+")
@0: Fiona is kind.[(triple1)] Gary is kind.[(triple2)] Harry is kind.[(triple3)] @1: Fiona is rough.[(((triple1) -> rule6))] Gary is rough.[(((triple2) -> rule6))] Harry is rough.[(((triple3) -> rule6))] @2: Fiona is young.[(((((triple1) -> rule6)) -> rule2))] Gary is young.[(((((triple2) -> rule6)) -> rule2))] Harry is young.[(((((triple3) -> rule6)) -> rule2))] @3: Fiona is cold.[(((((((triple1) -> rule6)) -> rule2) triple1) -> rule1))] Gary is cold.[(((((((triple2) -> rule6)) -> rule2) triple2) -> rule1))] Harry is cold.[(((((((triple3) -> rule6)) -> rule2) triple3) -> rule1))] @4: Fiona is green.[(((triple1 ((((((triple1) -> rule6)) -> rule2) triple1) -> rule1)) -> rule5))] Gary is green.[(((triple2 ((((((triple2) -> rule6)) -> rule2) triple2) -> rule1)) -> rule5))] Harry is green.[(((triple3 ((((((triple3) -> rule6)) -> rule2) triple3) -> rule1)) -> rule5))]
Fiona is kind.
("Fiona" "is" "kind" "+")
triple1
Gary is kind.
("Gary" "is" "kind" "+")
triple2
Harry is kind.
("Harry" "is" "kind" "+")
triple3
Fiona is rough.
("Fiona" "is" "rough" "+")
((triple1) -> (rule6 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
((triple2) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
((triple3) -> (rule6 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
((((triple1) -> (rule6 % int2))) -> (rule2 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
((((triple2) -> (rule6 % int2))) -> (rule2 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Harry is young.
("Harry" "is" "young" "+")
((((triple3) -> (rule6 % int2))) -> (rule2 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
((((((triple1) -> (rule6 % int3))) -> (rule2 % int2)) triple1) -> (rule1 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
int3
Gary is cold.
("Gary" "is" "cold" "+")
((((((triple2) -> (rule6 % int3))) -> (rule2 % int2)) triple2) -> (rule1 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Harry is cold.
("Harry" "is" "cold" "+")
((((((triple3) -> (rule6 % int3))) -> (rule2 % int2)) triple3) -> (rule1 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
((triple1 ((((((triple1) -> (rule6 % int4))) -> (rule2 % int3)) triple1) -> (rule1 % int2))) -> (rule5 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
Fiona is rough.
("Fiona" "is" "rough" "+")
int4
Gary is green.
("Gary" "is" "green" "+")
((triple2 ((((((triple2) -> (rule6 % int4))) -> (rule2 % int3)) triple2) -> (rule1 % int2))) -> (rule5 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
Gary is rough.
("Gary" "is" "rough" "+")
int4
Harry is green.
("Harry" "is" "green" "+")
((triple3 ((((((triple3) -> (rule6 % int4))) -> (rule2 % int3)) triple3) -> (rule1 % int2))) -> (rule5 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is young.
("Harry" "is" "young" "+")
int3
Harry is rough.
("Harry" "is" "rough" "+")
int4