define pyk of lemma splitNumericalSum(+-) as text unicode start of text unicode small l unicode small e unicode small m unicode small m unicode small a unicode space unicode small s unicode small p unicode small l unicode small i unicode small t unicode capital n unicode small u unicode small m unicode small e unicode small r unicode small i unicode small c unicode small a unicode small l unicode capital s unicode small u unicode small m unicode left parenthesis unicode plus sign unicode hyphen unicode right parenthesis unicode end of text end unicode text end text end define
define tex of lemma splitNumericalSum(+-) as text unicode start of text unicode small s unicode small p unicode small l unicode small i unicode small t unicode capital n unicode small u unicode small m unicode small e unicode small r unicode small i unicode small c unicode small a unicode small l unicode capital s unicode small u unicode small m unicode left parenthesis unicode plus sign unicode hyphen unicode right parenthesis unicode end of text end unicode text end text end define
define statement of lemma splitNumericalSum(+-) as system Q infer all metavar var x end metavar indeed all metavar var y end metavar indeed 0 <= metavar var x end metavar infer metavar var y end metavar <= 0 infer | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | end define
define proof of lemma splitNumericalSum(+-) as lambda var c dot lambda var x dot proof expand quote system Q infer all metavar var x end metavar indeed all metavar var y end metavar indeed | metavar var y end metavar | <= | metavar var x end metavar | infer 0 <= metavar var x end metavar infer metavar var y end metavar <= 0 infer lemma splitNumericalSum(+-, smallNegative) modus ponens 0 <= metavar var x end metavar modus ponens metavar var y end metavar <= 0 modus ponens | metavar var y end metavar | <= | metavar var x end metavar | conclude | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | cut lemma 0<=|x| conclude 0 <= | metavar var y end metavar | cut lemma leqAdditionLeft modus ponens 0 <= | metavar var y end metavar | conclude | metavar var x end metavar | + 0 <= | metavar var x end metavar | + | metavar var y end metavar | cut axiom plus0 conclude | metavar var x end metavar | + 0 = | metavar var x end metavar | cut lemma subLeqLeft modus ponens | metavar var x end metavar | + 0 = | metavar var x end metavar | modus ponens | metavar var x end metavar | + 0 <= | metavar var x end metavar | + | metavar var y end metavar | conclude | metavar var x end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | cut lemma leqTransitivity modus ponens | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | modus ponens | metavar var x end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | conclude | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | cut all metavar var x end metavar indeed all metavar var y end metavar indeed not0 | metavar var y end metavar | <= | metavar var x end metavar | infer 0 <= metavar var x end metavar infer metavar var y end metavar <= 0 infer lemma toLess modus ponens not0 | metavar var y end metavar | <= | metavar var x end metavar | conclude not0 | metavar var x end metavar | <= | metavar var y end metavar | imply not0 not0 | metavar var x end metavar | = | metavar var y end metavar | cut lemma splitNumericalSum(+-, bigNegative) modus ponens 0 <= metavar var x end metavar modus ponens metavar var y end metavar <= 0 modus ponens not0 | metavar var x end metavar | <= | metavar var y end metavar | imply not0 not0 | metavar var x end metavar | = | metavar var y end metavar | conclude | metavar var x end metavar + metavar var y end metavar | <= | metavar var y end metavar | cut lemma 0<=|x| conclude 0 <= | metavar var x end metavar | cut lemma leqAddition modus ponens 0 <= | metavar var x end metavar | conclude 0 + | metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | cut lemma plus0Left conclude 0 + | metavar var y end metavar | = | metavar var y end metavar | cut lemma subLeqLeft modus ponens 0 + | metavar var y end metavar | = | metavar var y end metavar | modus ponens 0 + | metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | conclude | metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | cut lemma leqTransitivity modus ponens | metavar var x end metavar + metavar var y end metavar | <= | metavar var y end metavar | modus ponens | metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | conclude | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | cut all metavar var x end metavar indeed all metavar var y end metavar indeed 1rule deduction modus ponens all metavar var x end metavar indeed all metavar var y end metavar indeed | metavar var y end metavar | <= | metavar var x end metavar | infer 0 <= metavar var x end metavar infer metavar var y end metavar <= 0 infer | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | conclude | metavar var y end metavar | <= | metavar var x end metavar | imply 0 <= metavar var x end metavar imply metavar var y end metavar <= 0 imply | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | cut 1rule deduction modus ponens all metavar var x end metavar indeed all metavar var y end metavar indeed not0 | metavar var y end metavar | <= | metavar var x end metavar | infer 0 <= metavar var x end metavar infer metavar var y end metavar <= 0 infer | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | conclude not0 | metavar var y end metavar | <= | metavar var x end metavar | imply 0 <= metavar var x end metavar imply metavar var y end metavar <= 0 imply | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | cut 0 <= metavar var x end metavar infer metavar var y end metavar <= 0 infer prop lemma from negations modus ponens | metavar var y end metavar | <= | metavar var x end metavar | imply 0 <= metavar var x end metavar imply metavar var y end metavar <= 0 imply | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | modus ponens not0 | metavar var y end metavar | <= | metavar var x end metavar | imply 0 <= metavar var x end metavar imply metavar var y end metavar <= 0 imply | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | conclude 0 <= metavar var x end metavar imply metavar var y end metavar <= 0 imply | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | cut prop lemma mp2 modus ponens 0 <= metavar var x end metavar imply metavar var y end metavar <= 0 imply | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | modus ponens 0 <= metavar var x end metavar modus ponens metavar var y end metavar <= 0 conclude | metavar var x end metavar + metavar var y end metavar | <= | metavar var x end metavar | + | metavar var y end metavar | end quote state proof state cache var c end expand end define
The pyk compiler, version 0.grue.20060417+ by Klaus Grue,