Difference between revisions of "RuleTransformation"

From Knowitall
Jump to: navigation, search
(Overview)
(Overview)
Line 12: Line 12:
 
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.
 
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.
  
;Example
+
;Types of transformations
 
<pre>
 
<pre>
 
Equality under stemming will be covered by the following rules:
 
Equality under stemming will be covered by the following rules:
Line 34: Line 34:
 
...
 
...
  
 +
</pre>
 +
 +
;<b>Example 1</b>
 +
 +
Question to demonstrate: “Growth causes leaves of a plant to become large”.
 +
<pre>
 +
(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]
 +
</pre>
 +
 +
Evidence from definition: “The noun growth is the process of something becoming bigger”
 +
<pre>
 +
(growth, is process of, (something, become bigger)
 +
(growth, is process of, (something, become, bigger))
 +
</pre>
 +
 +
; Rules needed
 +
<div border=1>
 +
 +
 +
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]
 +
</div>
 +
 +
Notes on rules:
 +
 +
We can derive abductive inverses automatically with a meta-rule.
 +
Lexical substitution rules are generated on the fly as needed.
 +
 +
;Derivation:
 +
 +
<pre>
 +
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
 
</pre>
 
</pre>

Revision as of 20:36, 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