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 plus sign 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 plus sign 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 0 <= metavar var y end metavar 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 0 <= metavar var x end metavar infer 0 <= metavar var y end metavar infer lemma addEquations(Leq) modus ponens 0 <= metavar var x end metavar modus ponens 0 <= metavar var y end metavar conclude 0 + 0 <= metavar var x end metavar + metavar var y end metavar cut axiom plus0 conclude 0 + 0 = 0 cut lemma subLeqLeft modus ponens 0 + 0 = 0 modus ponens 0 + 0 <= metavar var x end metavar + metavar var y end metavar conclude 0 <= metavar var x end metavar + metavar var y end metavar cut lemma nonnegativeNumerical modus ponens 0 <= 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 lemma nonnegativeNumerical modus ponens 0 <= metavar var x end metavar conclude | metavar var x end metavar | = metavar var x end metavar cut lemma nonnegativeNumerical modus ponens 0 <= metavar var y end metavar conclude | metavar var y end metavar | = metavar var y end metavar cut lemma addEquations modus ponens | metavar var x end metavar | = metavar var x end metavar modus ponens | metavar var y 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 lemma eqSymmetry modus ponens | metavar var x end metavar | + | 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 lemma eqTransitivity modus ponens | metavar var x end metavar + metavar var y end metavar | = metavar var x end metavar + metavar var y end metavar modus ponens metavar var x end metavar + 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 lemma eqLeq modus ponens | metavar var x end metavar + 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 | end quote state proof state cache var c end expand end define
The pyk compiler, version 0.grue.20060417+ by Klaus Grue,