-
-
Notifications
You must be signed in to change notification settings - Fork 6
Inference Rules
bhpayne edited this page Jan 4, 2015
·
7 revisions
Observations on categories of inference rules:
- pairs which undo each other -- "divide both sides by" versus "multiply both sides by"
- triplets -- "add X to LHS" and "add X to RHS" and "add X to both sides"
- verbal: "claim left-hand-side equals right-hand-side of this expression"
- terminates a derivation
- verbal: "swap left-hand-side with the right-hand-side of this expression"
- example:
given "A*x=B", swapLHSwithRHS yields "B=A*x"
- verbal: sum the exponents of this expression
- example:
given "(A^x)*(A^y)=(C^3)*(C^r)+2", sumExponents yields "A^(x+y)=(C^(3+r))+2"
- verbal: sum the exponents of left-hand-side of this expression
- complement of sumExponentsRHS
- example:
given "(A^x)*(A^y)=(C^3)*(C^r)+2", sumExponents yields "A^(x+y)=(C^3)*(C^r)+2"
- verbal: sum the exponents of left-hand-side of this expression
- complement of sumExponentsRHS
- example:
given "(A^x)*(A^y)=(C^3)*(C^r)+2", sumExponents yields "(A^x)*(A^y)=(C^(3+r))+2"
- verbal: add expression X to expression Y
- example
given "A*x=B" and "C*y=F", addEqXtoEqY yields "A*x+C*y=B+F"
- verbal: substitute right-hand-side of expression X into expression Y
- complement of subLHSofEqXintoEqY
- example
given "A*x=B" and "C*y=A*x", subRHSofEqXintoEqY yields "C*y=B"
- verbal: substitute left-hand-side of expression X into expression Y
- complement of subRHSofEqXintoEqY
- example
given "A*x=B" and "C*y=B", subLHSofEqXintoEqY yields "C*y=A*x"
- verbal: multiply expression X by expression Y
- example
given "A*x=B" and "C*y=D", multEqXbyEqY yields "A*x*C*y=B*D"
- verbal: left-hand-side of expression X equals left-hand-side of expression Y
- example
given "A*x=B" and "A*x=C", LHSofEqXeqLHSofEqY yields "B=C"
- verbal: right-hand-side of expression X equals right-hand-side of expression Y
- example
given "A*x=B" and "C=B", RHSofEqXeqRHSofEqY yields "A*x=C"
- verbal: "substitute variable X for variable Y in this expression"
- origin: substitution property of equality
- example:
given "A*x=B", subXforY(input feed=A,output feed=C) yields "C*x=B"
- verbal: "multiple left-hand-side of this expression by unity"
- origin: multiplicative identity
- example
given "A*x=B", multLHSbyUnity(feed=C/C) yields "(A*x*C)/C=B"
- verbal: "multiple left-hand-side of this expression by unity"
- origin: multiplicative identity
- example
given "A*x=B", multLHSbyUnity(feed=C/C) yields "A*x=(B*C)/C"
- terminates derivation
- f(x)=f(-x)
- example: cosine
- terminates derivation
- -f(x) = f(-x)
- example: sine
- origin: additive identity
- example
given "A*x=B", addZerotoLHS(feed=C-C) yields "A*x+C-C=B"
- verbal: add zero to the right-hand-side of expression
- origin: additive identity
- example
given "A*x=B", addZerotoRHS(feed=C-C) yields "A*x=B+C-C"
- verbal: "multiply both sides of this expression by"
- example
given "A*x=B", multbothsidesby(feed=2) yields "A*x*2=B*2"
- verbal: "multiply both sides of this expression by"
- example:
given "A*x=B", dividebothsidesby(feed=2) yields "(A*x)/2=B/2"
- verbal: "add the quantity to both sides of the expression"
- example:
given "A*x=B", addXtoBothSides(feed=2) yields "A*x+2=B+2"
- verbal: "subtract quantity from both sides of the expression"
- example:
given "A*x=B", subtractXfromBothSides(feed=2) yields "A*x-2=B-2"
- example
given "A*x=B",
- example
given "A*x=B",
- example
given "A*k+B*k+C=D", factorOutXfromLHS(feed=k) yields "k*(A+B)+C=D"
- example: given "A*x=B",
- example
given "A*x=B",
- example:
given "A*x=B",
- example:
given "A*x=B",
- example:
given "A*x=B",
- example:
given "A*x=B",