define pyk of lemma splitNumericalProduct(++) 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 p unicode small r unicode small o unicode small d unicode small u unicode small c unicode small t 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 splitNumericalProduct(++) as text unicode start of text unicode capital 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 p unicode small r unicode small o unicode small d unicode small u unicode small c unicode small t 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 splitNumericalProduct(++) 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 splitNumericalProduct(++) 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 nonnegativeFactors modus ponens 0 <= metavar var x end metavar modus ponens 0 <= 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 multiplyEquations 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 | end quote state proof state cache var c end expand end define
The pyk compiler, version 0.grue.20060417+ by Klaus Grue,