Difference between revisions of "RuleTransformation"
(→Overview) |
(→Overview) |
||
Line 51: | Line 51: | ||
; Rules needed | ; Rules needed | ||
− | + | ((( | |
+ | 1. Rel: X => Rel: is process of [generalize any action to “is process of”] | ||
− | |||
1a. Rel: cause => Rel: is process of [more particular version of rule 2] | 1a. Rel: cause => Rel: is process of [more particular version of rule 2] | ||
+ | |||
2. Rel: is process of => Rel: X [abductive rule, inverse of rule 1] | 2. Rel: is process of => Rel: X [abductive rule, inverse of rule 1] | ||
+ | |||
2a. Rel: is process of => Rel: cause [abductive rule, inverse of rule 1a] | 2a. Rel: is process of => Rel: cause [abductive rule, inverse of rule 1a] | ||
+ | |||
3. Arg: X => Arg: something [generalize any arg value to “something”] | 3. Arg: X => Arg: something [generalize any arg value to “something”] | ||
+ | |||
4. Arg: something => Arg: X [abductive rule, inverse of rule 3] | 4. Arg: something => Arg: X [abductive rule, inverse of rule 3] | ||
+ | |||
5. Rel: become bigger => Rel: become big [lexical substitution from verb stemmer] | 5. Rel: become bigger => Rel: become big [lexical substitution from verb stemmer] | ||
+ | |||
6. Rel: become big => Rel: become large [lexical substitution from WN synonym] | 6. Rel: become big => Rel: become large [lexical substitution from WN synonym] | ||
− | + | ||
+ | ))) | ||
Notes on rules: | Notes on rules: |
Revision as of 20:39, 21 August 2013
Overview
Inference rules are represented in human-readable format. This page describes the transformation of these rules into Tuffy's MLN syntax.
We first define a general purpose tuple predicate (T) that can represent n-ary and nested tuples.
T(arg1:String, rel:String, arg2:String, arg3:String, narg1:String, nrel:String, narg2:String)
Rules that specify when two arguments match (e.g., under synonymy, stemming, and/or dropping of modifiers) need to be enumerated out for each argument position.
- Types of transformations
Equality under stemming will be covered by the following rules: T(a1, rel, a2, a3, na1, arel, na2), stem(a1, x) => T(x, rel, a2, a3, na1, nrel, na2) T(a1, rel, a2, a3, na1, arel, na2), stem(rel, x) => T(a1, x, a2, a3, na1, nrel, na2) T(a1, rel, a2, a3, na1, arel, na2), stem(a2, x) => T(a1, rel, x, a3, na1, nrel, na2) ... ... Equality under head word transformations will be covered by the following rules: T(a1, rel, a2, a3, na1, arel, na2) [headword(a1) == x || headword(x) == a1] => T(x, rel, a2, a3, na1, nrel, na2) ... ... Allowing the argument with "something" to match any value. T(a1, rel, "something", a3, na1, nrel, na2) => T(a1, rel, x, na1, nrel, na2) ...
- Example 1
Question to demonstrate: “Growth causes leaves of a plant to become large”.
(growth, cause, (leaves of a plant, become large)) [nested, with intransitive arg2] (growth, cause, (leaves of a plant, become, large)) [nested, with binary rel for arg2]
Evidence from definition: “The noun growth is the process of something becoming bigger”
(growth, is process of, (something, become bigger) (growth, is process of, (something, become, bigger))
- Rules needed
(((
1. Rel: X => Rel: is process of [generalize any action to “is process of”]
1a. Rel: cause => Rel: is process of [more particular version of rule 2]
2. Rel: is process of => Rel: X [abductive rule, inverse of rule 1]
2a. Rel: is process of => Rel: cause [abductive rule, inverse of rule 1a]
3. Arg: X => Arg: something [generalize any arg value to “something”]
4. Arg: something => Arg: X [abductive rule, inverse of rule 3]
5. Rel: become bigger => Rel: become big [lexical substitution from verb stemmer]
6. Rel: become big => Rel: become large [lexical substitution from WN synonym]
)))
Notes on rules:
We can derive abductive inverses automatically with a meta-rule. Lexical substitution rules are generated on the fly as needed.
- Derivation
Evidence: (growth, is process of, (something, become bigger)) Rel: become bigger => Rel: become big (growth, is process of, (something, become big)) Rel: become big => Rel: become large (growth, is process of, (something, become large)) Arg: something => Arg: X (growth, is process of, (leaves of a plant, become large)) Rel: is process of => Rel: X (growth, cause, (leaves of a plant, become large)) QED