This document is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. The copyright holder grants you permission to redistribute this document freely as a verbatim copy. Furthermore, the copyright holder permits you to develop any derived work from this document provided that the following conditions are met. a) The derived work acknowledges the fact that it is derived from this document, and maintains a prominent reference in the work to the original source. b) The fact that the derived work is not the original OpenMath document is stated prominently in the derived work. Moreover if both this document and the derived work are Content Dictionaries then the derived work must include a different CDName element, chosen so that it cannot be confused with any works adopted by the OpenMath Society. In particular, if there is a Content Dictionary Group whose name is, for example, `math' containing Content Dictionaries named `math1', `math2' etc., then you should not name a derived Content Dictionary `mathN' where N is an integer. However you are free to name it `private_mathN' or some such. This is because the names `mathN' may be used by the OpenMath Society for future extensions. c) The derived work is distributed under terms that allow the compilation of derived works, but keep paragraphs a) and b) intact. The simplest way to do this is to distribute the derived work under the OpenMath license, but this is not a requirement. If you have questions about this license please contact the OpenMath society at http://www.openmath.org.
Author: OpenMath Consortium SourceURL: https://github.com/OpenMath/CDs
This CD defines symbols for common arithmetic functions.
lcmThe symbol to represent the n-ary function to return the least common multiple of its arguments.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="lcm"/> <OMV name="a"/> <OMV name="b"/> </OMA> <OMA> <OMS cd="arith1" name="divide"/> <OMA> <OMS cd="arith1" name="times"/> <OMV name="a"/> <OMV name="b"/> </OMA> <OMA> <OMS cd="arith1" name="gcd"/> <OMV name="a"/> <OMV name="b"/> </OMA> </OMA> </OMA> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">lcm</csymbol><ci>a</ci><ci>b</ci></apply> <apply><csymbol cd="arith1">divide</csymbol> <apply><csymbol cd="arith1">times</csymbol><ci>a</ci><ci>b</ci></apply> <apply><csymbol cd="arith1">gcd</csymbol><ci>a</ci><ci>b</ci></apply> </apply> </apply> </math>
arith1.lcm($a, $b) = ($a * $b) / arith1.gcd($a, $b)
lcm ( a , b ) = a b gcd ( a , b )
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMBIND> <OMS cd="quant1" name="forall"/> <OMBVAR> <OMV name="a"/> <OMV name="b"/> </OMBVAR> <OMA> <OMS cd="logic1" name="implies"/> <OMA> <OMS cd="logic1" name="and"/> <OMA> <OMS cd="set1" name="in"/> <OMV name="a"/> <OMS cd="setname1" name="Z"/> </OMA> <OMA> <OMS cd="set1" name="in"/> <OMV name="b"/> <OMS cd="setname1" name="Z"/> </OMA> </OMA> <OMA> <OMS cd="logic1" name="not"/> <OMBIND> <OMS cd="quant1" name="exists"/> <OMBVAR> <OMV name="c"/> </OMBVAR> <OMA> <OMS cd="logic1" name="and"/> <OMA> <OMS cd="relation1" name="gt"/> <OMV name="c"/> <OMI>0</OMI> </OMA> <OMA> <OMS cd="integer1" name="factorof"/> <OMV name="a"/> <OMV name="c"/> </OMA> <OMA> <OMS cd="integer1" name="factorof"/> <OMV name="b"/> <OMV name="c"/> </OMA> <OMA> <OMS cd="relation1" name="lt"/> <OMV name="c"/> <OMA> <OMS cd="arith1" name="lcm"/> <OMV name="a"/> <OMV name="b"/> </OMA> </OMA> </OMA> </OMBIND> </OMA> </OMA> </OMBIND> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <bind><csymbol cd="quant1">forall</csymbol> <bvar><ci>a</ci></bvar> <bvar><ci>b</ci></bvar> <apply><csymbol cd="logic1">implies</csymbol> <apply><csymbol cd="logic1">and</csymbol> <apply><csymbol cd="set1">in</csymbol><ci>a</ci><csymbol cd="setname1">Z</csymbol></apply> <apply><csymbol cd="set1">in</csymbol><ci>b</ci><csymbol cd="setname1">Z</csymbol></apply> </apply> <apply><csymbol cd="logic1">not</csymbol> <bind><csymbol cd="quant1">exists</csymbol> <bvar><ci>c</ci></bvar> <apply><csymbol cd="logic1">and</csymbol> <apply><csymbol cd="relation1">gt</csymbol><ci>c</ci><cn type="integer">0</cn></apply> <apply><csymbol cd="integer1">factorof</csymbol><ci>a</ci><ci>c</ci></apply> <apply><csymbol cd="integer1">factorof</csymbol><ci>b</ci><ci>c</ci></apply> <apply><csymbol cd="relation1">lt</csymbol> <ci>c</ci> <apply><csymbol cd="arith1">lcm</csymbol><ci>a</ci><ci>b</ci></apply> </apply> </apply> </bind> </apply> </apply> </bind> </math>forall
[
a b] . (
implies(
and(
in(
a,
Z) ,
in(
b,
Z) ) ,
not(
exists[
c] . (
and(
gt(
c, 0) ,
factorof(
a,
c) ,
factorof(
b,
c) ,
lt(
c,
lcm(
a,
b) ) ) ) ) ) )
quant1.forall[$a, $b -> set1.in($a, setname1.Z) and set1.in($b, setname1.Z) ==> not(quant1.exists[$c -> $c > 0 and integer1.factorof($a, $c) and integer1.factorof($b, $c) and $c < arith1.lcm($a, $b)])]
∀ a , b . a ∈ Z ∧ b ∈ Z ⇒ ¬ ∃ c . c > 0 ∧ factorof ( a , c ) ∧ factorof ( b , c ) ∧ c < lcm ( a , b )
The symbol to represent the n-ary function to return the gcd (greatest common divisor) of its arguments.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMBIND> <OMS cd="quant1" name="forall"/> <OMBVAR> <OMV name="a"/> <OMV name="b"/> </OMBVAR> <OMA> <OMS cd="logic1" name="implies"/> <OMA> <OMS cd="logic1" name="and"/> <OMA> <OMS cd="set1" name="in"/> <OMV name="a"/> <OMS cd="setname1" name="Z"/> </OMA> <OMA> <OMS cd="set1" name="in"/> <OMV name="b"/> <OMS cd="setname1" name="Z"/> </OMA> </OMA> <OMA> <OMS cd="logic1" name="not"/> <OMBIND> <OMS cd="quant1" name="exists"/> <OMBVAR> <OMV name="c"/> </OMBVAR> <OMA> <OMS cd="logic1" name="and"/> <OMA> <OMS cd="set1" name="in"/> <OMA> <OMS cd="arith1" name="divide"/> <OMV name="a"/> <OMV name="c"/> </OMA> <OMS cd="setname1" name="Z"/> </OMA> <OMA> <OMS cd="set1" name="in"/> <OMA> <OMS cd="arith1" name="divide"/> <OMV name="b"/> <OMV name="c"/> </OMA> <OMS cd="setname1" name="Z"/> </OMA> <OMA> <OMS cd="relation1" name="gt"/> <OMV name="c"/> <OMA> <OMS cd="arith1" name="gcd"/> <OMV name="a"/> <OMV name="b"/> </OMA> </OMA> </OMA> </OMBIND> </OMA> </OMA> </OMBIND> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <bind><csymbol cd="quant1">forall</csymbol> <bvar><ci>a</ci></bvar> <bvar><ci>b</ci></bvar> <apply><csymbol cd="logic1">implies</csymbol> <apply><csymbol cd="logic1">and</csymbol> <apply><csymbol cd="set1">in</csymbol><ci>a</ci><csymbol cd="setname1">Z</csymbol></apply> <apply><csymbol cd="set1">in</csymbol><ci>b</ci><csymbol cd="setname1">Z</csymbol></apply> </apply> <apply><csymbol cd="logic1">not</csymbol> <bind><csymbol cd="quant1">exists</csymbol> <bvar><ci>c</ci></bvar> <apply><csymbol cd="logic1">and</csymbol> <apply><csymbol cd="set1">in</csymbol> <apply><csymbol cd="arith1">divide</csymbol><ci>a</ci><ci>c</ci></apply> <csymbol cd="setname1">Z</csymbol> </apply> <apply><csymbol cd="set1">in</csymbol> <apply><csymbol cd="arith1">divide</csymbol><ci>b</ci><ci>c</ci></apply> <csymbol cd="setname1">Z</csymbol> </apply> <apply><csymbol cd="relation1">gt</csymbol> <ci>c</ci> <apply><csymbol cd="arith1">gcd</csymbol><ci>a</ci><ci>b</ci></apply> </apply> </apply> </bind> </apply> </apply> </bind> </math>forall
[
a b] . (
implies(
and(
in(
a,
Z) ,
in(
b,
Z) ) ,
not(
exists[
c] . (
and(
in(
divide(
a,
c) ,
Z) ,
in(
divide(
b,
c) ,
Z) ,
gt(
c,
gcd(
a,
b) ) ) ) ) ) )
quant1.forall[$a, $b -> set1.in($a, setname1.Z) and set1.in($b, setname1.Z) ==> not(quant1.exists[$c -> set1.in($a / $c, setname1.Z) and set1.in($b / $c, setname1.Z) and $c > arith1.gcd($a, $b)])]
∀ a , b . a ∈ Z ∧ b ∈ Z ⇒ ¬ ∃ c . a c ∈ Z ∧ b c ∈ Z ∧ c > gcd ( a , b )
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="gcd"/> <OMI> 6 </OMI> <OMI> 9 </OMI> </OMA> <OMI> 3 </OMI> </OMA> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">gcd</csymbol> <cn type="integer">6</cn> <cn type="integer">9</cn> </apply> <cn type="integer">3</cn> </apply> </math>
The symbol representing an n-ary commutative function plus.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMBIND> <OMS cd="quant1" name="forall"/> <OMBVAR> <OMV name="a"/> <OMV name="b"/> </OMBVAR> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="plus"/> <OMV name="a"/> <OMV name="b"/> </OMA> <OMA> <OMS cd="arith1" name="plus"/> <OMV name="b"/> <OMV name="a"/> </OMA> </OMA> </OMBIND> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <bind><csymbol cd="quant1">forall</csymbol> <bvar><ci>a</ci></bvar> <bvar><ci>b</ci></bvar> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">plus</csymbol><ci>a</ci><ci>b</ci></apply> <apply><csymbol cd="arith1">plus</csymbol><ci>b</ci><ci>a</ci></apply> </apply> </bind> </math>
quant1.forall[$a, $b -> $a + $b = $b + $a]
∀ a , b . a + b = b + a
This symbol denotes unary minus, i.e. the additive inverse.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMBIND> <OMS cd="quant1" name="forall"/> <OMBVAR> <OMV name="a"/> </OMBVAR> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="plus"/> <OMV name="a"/> <OMA> <OMS cd="arith1" name="unary_minus"/> <OMV name="a"/> </OMA> </OMA> <OMS cd="alg1" name="zero"/> </OMA> </OMBIND> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <bind><csymbol cd="quant1">forall</csymbol> <bvar><ci>a</ci></bvar> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">plus</csymbol> <ci>a</ci> <apply><csymbol cd="arith1">unary_minus</csymbol><ci>a</ci></apply> </apply> <csymbol cd="alg1">zero</csymbol> </apply> </bind> </math>
quant1.forall[$a -> $a + -($a) = alg1.zero]
The symbol representing a binary minus function. This is equivalent to adding the additive inverse.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMBIND> <OMS cd="quant1" name="forall"/> <OMBVAR> <OMV name="a"/> <OMV name="b"/> </OMBVAR> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="minus"/> <OMV name="a"/> <OMV name="b"/> </OMA> <OMA> <OMS cd="arith1" name="plus"/> <OMV name="a"/> <OMA> <OMS cd="arith1" name="unary_minus"/> <OMV name="b"/> </OMA> </OMA> </OMA> </OMBIND> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <bind><csymbol cd="quant1">forall</csymbol> <bvar><ci>a</ci></bvar> <bvar><ci>b</ci></bvar> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">minus</csymbol><ci>a</ci><ci>b</ci></apply> <apply><csymbol cd="arith1">plus</csymbol> <ci>a</ci> <apply><csymbol cd="arith1">unary_minus</csymbol><ci>b</ci></apply> </apply> </apply> </bind> </math>
quant1.forall[$a, $b -> $a - $b = $a + -($b)]
∀ a , b . a - b = a - b
The symbol representing an n-ary multiplication function.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="times"/> <OMA> <OMS cd="linalg2" name="matrix"/> <OMA> <OMS cd="linalg2" name="matrixrow"/> <OMI> 1 </OMI> <OMI> 2 </OMI> </OMA> <OMA> <OMS cd="linalg2" name="matrixrow"/> <OMI> 3 </OMI> <OMI> 4 </OMI> </OMA> </OMA> <OMA> <OMS cd="linalg2" name="matrix"/> <OMA> <OMS cd="linalg2" name="matrixrow"/> <OMI> 5 </OMI> <OMI> 6 </OMI> </OMA> <OMA> <OMS cd="linalg2" name="matrixrow"/> <OMI> 7 </OMI> <OMI> 8 </OMI> </OMA> </OMA> </OMA> <OMA> <OMS cd="linalg2" name="matrix"/> <OMA> <OMS cd="linalg2" name="matrixrow"/> <OMI> 19 </OMI> <OMI> 22 </OMI> </OMA> <OMA> <OMS cd="linalg2" name="matrixrow"/> <OMI> 43 </OMI> <OMI> 50 </OMI> </OMA> </OMA> </OMA> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">times</csymbol> <apply><csymbol cd="linalg2">matrix</csymbol> <apply><csymbol cd="linalg2">matrixrow</csymbol> <cn type="integer">1</cn> <cn type="integer">2</cn> </apply> <apply><csymbol cd="linalg2">matrixrow</csymbol> <cn type="integer">3</cn> <cn type="integer">4</cn> </apply> </apply> <apply><csymbol cd="linalg2">matrix</csymbol> <apply><csymbol cd="linalg2">matrixrow</csymbol> <cn type="integer">5</cn> <cn type="integer">6</cn> </apply> <apply><csymbol cd="linalg2">matrixrow</csymbol> <cn type="integer">7</cn> <cn type="integer">8</cn> </apply> </apply> </apply> <apply><csymbol cd="linalg2">matrix</csymbol> <apply><csymbol cd="linalg2">matrixrow</csymbol> <cn type="integer">19</cn> <cn type="integer">22</cn> </apply> <apply><csymbol cd="linalg2">matrixrow</csymbol> <cn type="integer">43</cn> <cn type="integer">50</cn> </apply> </apply> </apply> </math>eq
(
times(
matrix(
matrixrow( 1 , 2 ) ,
matrixrow( 3 , 4 ) ) ,
matrix(
matrixrow( 5 , 6 ) ,
matrixrow( 7 , 8 ) ) ) ,
matrix(
matrixrow( 19 , 22 ) ,
matrixrow( 43 , 50 ) ) )
linalg2.matrix(linalg2.matrixrow(1, 2), linalg2.matrixrow(3, 4)) * linalg2.matrix(linalg2.matrixrow(5, 6), linalg2.matrixrow(7, 8)) = linalg2.matrix(linalg2.matrixrow(19, 22), linalg2.matrixrow(43, 50))
1 2 3 4 5 6 7 8 = 19 22 43 50
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMBIND> <OMS cd="quant1" name="forall"/> <OMBVAR> <OMV name="a"/> <OMV name="b"/> </OMBVAR> <OMA> <OMS cd="logic1" name="and"/> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="times"/> <OMV name="a"/> <OMS cd="alg1" name="zero"/> </OMA> <OMS cd="alg1" name="zero"/> </OMA> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="times"/> <OMV name="a"/> <OMV name="b"/> </OMA> <OMA> <OMS cd="arith1" name="plus"/> <OMA> <OMS cd="arith1" name="times"/> <OMV name="a"/> <OMA> <OMS cd="arith1" name="minus"/> <OMV name="b"/> <OMS cd="alg1" name="one"/> </OMA> </OMA> <OMV name="a"/> </OMA> </OMA> </OMA> </OMBIND> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <bind><csymbol cd="quant1">forall</csymbol> <bvar><ci>a</ci></bvar> <bvar><ci>b</ci></bvar> <apply><csymbol cd="logic1">and</csymbol> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">times</csymbol><ci>a</ci><csymbol cd="alg1">zero</csymbol></apply> <csymbol cd="alg1">zero</csymbol> </apply> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">times</csymbol><ci>a</ci><ci>b</ci></apply> <apply><csymbol cd="arith1">plus</csymbol> <apply><csymbol cd="arith1">times</csymbol> <ci>a</ci> <apply><csymbol cd="arith1">minus</csymbol><ci>b</ci><csymbol cd="alg1">one</csymbol></apply> </apply> <ci>a</ci> </apply> </apply> </apply> </bind> </math>
quant1.forall[$a, $b -> $a * alg1.zero = alg1.zero and $a * $b = $a * ($b - alg1.one) + $a]
∀ a , b . a 0 = 0 ∧ a b = a ( b - 1 ) + a
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMBIND> <OMS cd="quant1" name="forall"/> <OMBVAR> <OMV name="a"/> <OMV name="b"/> <OMV name="c"/> </OMBVAR> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="times"/> <OMV name="a"/> <OMA> <OMS cd="arith1" name="plus"/> <OMV name="b"/> <OMV name="c"/> </OMA> </OMA> <OMA> <OMS cd="arith1" name="plus"/> <OMA> <OMS cd="arith1" name="times"/> <OMV name="a"/> <OMV name="b"/> </OMA> <OMA> <OMS cd="arith1" name="times"/> <OMV name="a"/> <OMV name="c"/> </OMA> </OMA> </OMA> </OMBIND> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <bind><csymbol cd="quant1">forall</csymbol> <bvar><ci>a</ci></bvar> <bvar><ci>b</ci></bvar> <bvar><ci>c</ci></bvar> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">times</csymbol> <ci>a</ci> <apply><csymbol cd="arith1">plus</csymbol><ci>b</ci><ci>c</ci></apply> </apply> <apply><csymbol cd="arith1">plus</csymbol> <apply><csymbol cd="arith1">times</csymbol><ci>a</ci><ci>b</ci></apply> <apply><csymbol cd="arith1">times</csymbol><ci>a</ci><ci>c</ci></apply> </apply> </apply> </bind> </math>
quant1.forall[$a, $b, $c -> $a * ($b + $c) = $a * $b + $a * $c]
∀ a , b , c . a ( b + c ) = a b + a c
This symbol represents a (binary) division function denoting the first argument right-divided by the second, i.e. divide(a,b)=a*inverse(b). It is the inverse of the multiplication function defined by the symbol times in this CD.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMBIND> <OMS cd="quant1" name="forall"/> <OMBVAR> <OMV name="a"/> </OMBVAR> <OMA> <OMS cd="logic1" name="implies"/> <OMA> <OMS cd="relation1" name="neq"/> <OMV name="a"/> <OMS cd="alg1" name="zero"/> </OMA> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="divide"/> <OMV name="a"/> <OMV name="a"/> </OMA> <OMS cd="alg1" name="one"/> </OMA> </OMA> </OMBIND> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <bind><csymbol cd="quant1">forall</csymbol> <bvar><ci>a</ci></bvar> <apply><csymbol cd="logic1">implies</csymbol> <apply><csymbol cd="relation1">neq</csymbol><ci>a</ci><csymbol cd="alg1">zero</csymbol></apply> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">divide</csymbol><ci>a</ci><ci>a</ci></apply> <csymbol cd="alg1">one</csymbol> </apply> </apply> </bind> </math>
quant1.forall[$a -> $a != alg1.zero ==> $a / $a = alg1.one]
This symbol represents a power function. The first argument is raised to the power of the second argument. When the second argument is not an integer, powering is defined in terms of exponentials and logarithms for the complex and real numbers. This operator can represent general powering.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMA> <OMS cd="logic1" name="implies"/> <OMA> <OMS cd="set1" name="in"/> <OMV name="x"/> <OMS cd="setname1" name="C"/> </OMA> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS name="power" cd="arith1"/> <OMV name="x"/> <OMV name="a"/> </OMA> <OMA> <OMS name="exp" cd="transc1"/> <OMA> <OMS name="times" cd="arith1"/> <OMV name="a"/> <OMA> <OMS name="ln" cd="transc1"/> <OMV name="x"/> </OMA> </OMA> </OMA> </OMA> </OMA> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <apply><csymbol cd="logic1">implies</csymbol> <apply><csymbol cd="set1">in</csymbol><ci>x</ci><csymbol cd="setname1">C</csymbol></apply> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">power</csymbol><ci>x</ci><ci>a</ci></apply> <apply><csymbol cd="transc1">exp</csymbol> <apply><csymbol cd="arith1">times</csymbol> <ci>a</ci> <apply><csymbol cd="transc1">ln</csymbol><ci>x</ci></apply> </apply> </apply> </apply> </apply> </math>
set1.in($x, setname1.C) ==> $x ^ $a = exp($a * ln($x))
x ∈ C ⇒ x a = exp ( a ln ( x ) )
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMA> <OMS cd="logic1" name="implies"/> <OMA> <OMS cd="set1" name="in"/> <OMV name="n"/> <OMS cd="setname1" name="Z"/> </OMA> <OMA> <OMS cd="logic1" name="and"/> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="power"/> <OMV name="x"/> <OMI>0</OMI> </OMA> <OMS cd="alg1" name="one"/> </OMA> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="power"/> <OMV name="x"/> <OMV name="n"/> </OMA> <OMA> <OMS cd="arith1" name="times"/> <OMV name="x"/> <OMA> <OMS cd="arith1" name="power"/> <OMV name="x"/> <OMA> <OMS cd="arith1" name="minus"/> <OMV name="n"/> <OMI>1</OMI> </OMA> </OMA> </OMA> </OMA> </OMA> </OMA> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <apply><csymbol cd="logic1">implies</csymbol> <apply><csymbol cd="set1">in</csymbol><ci>n</ci><csymbol cd="setname1">Z</csymbol></apply> <apply><csymbol cd="logic1">and</csymbol> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">power</csymbol><ci>x</ci><cn type="integer">0</cn></apply> <csymbol cd="alg1">one</csymbol> </apply> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">power</csymbol><ci>x</ci><ci>n</ci></apply> <apply><csymbol cd="arith1">times</csymbol> <ci>x</ci> <apply><csymbol cd="arith1">power</csymbol> <ci>x</ci> <apply><csymbol cd="arith1">minus</csymbol><ci>n</ci><cn type="integer">1</cn></apply> </apply> </apply> </apply> </apply> </apply> </math>implies
(
in(
n,
Z) ,
and(
eq(
power(
x, 0) ,
one) ,
eq(
power(
x,
n) ,
times(
x,
power(
x,
minus(
n, 1) ) ) ) ) )
set1.in($n, setname1.Z) ==> $x ^ 0 = alg1.one and $x ^ $n = $x * $x ^ ($n - 1)
n ∈ Z ⇒ x 0 = 1 ∧ x n = x x ( n - 1 )
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="power"/> <OMA> <OMS cd="linalg2" name="matrix"/> <OMA> <OMS cd="linalg2" name="matrixrow"/> <OMI> 1 </OMI> <OMI> 2 </OMI> </OMA> <OMA> <OMS cd="linalg2" name="matrixrow"/> <OMI> 3 </OMI> <OMI> 4 </OMI> </OMA> </OMA> <OMI>3</OMI> </OMA> <OMA> <OMS cd="linalg2" name="matrix"/> <OMA> <OMS cd="linalg2" name="matrixrow"/> <OMI> 37 </OMI> <OMI> 54 </OMI> </OMA> <OMA> <OMS cd="linalg2" name="matrixrow"/> <OMI> 81 </OMI> <OMI> 118 </OMI> </OMA> </OMA> </OMA> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">power</csymbol> <apply><csymbol cd="linalg2">matrix</csymbol> <apply><csymbol cd="linalg2">matrixrow</csymbol> <cn type="integer">1</cn> <cn type="integer">2</cn> </apply> <apply><csymbol cd="linalg2">matrixrow</csymbol> <cn type="integer">3</cn> <cn type="integer">4</cn> </apply> </apply> <cn type="integer">3</cn> </apply> <apply><csymbol cd="linalg2">matrix</csymbol> <apply><csymbol cd="linalg2">matrixrow</csymbol> <cn type="integer">37</cn> <cn type="integer">54</cn> </apply> <apply><csymbol cd="linalg2">matrixrow</csymbol> <cn type="integer">81</cn> <cn type="integer">118</cn> </apply> </apply> </apply> </math>
linalg2.matrix(linalg2.matrixrow(1, 2), linalg2.matrixrow(3, 4)) ^ 3 = linalg2.matrix(linalg2.matrixrow(37, 54), linalg2.matrixrow(81, 118))
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="power"/> <OMS cd="nums1" name="e"/> <OMA> <OMS cd="arith1" name="times"/> <OMS cd="nums1" name="i"/> <OMS cd="nums1" name="pi"/> </OMA> </OMA> <OMA> <OMS cd="arith1" name="unary_minus"/> <OMS cd="alg1" name="one"/> </OMA> </OMA> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">power</csymbol> <csymbol cd="nums1">e</csymbol> <apply><csymbol cd="arith1">times</csymbol> <csymbol cd="nums1">i</csymbol> <csymbol cd="nums1">pi</csymbol> </apply> </apply> <apply><csymbol cd="arith1">unary_minus</csymbol><csymbol cd="alg1">one</csymbol></apply> </apply> </math>
nums1.e ^ (nums1.i * nums1.pi) = -(alg1.one)
A unary operator which represents the absolute value of its argument. The argument should be numerically valued. In the complex case this is often referred to as the modulus.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMBIND> <OMS cd="quant1" name="forall"/> <OMBVAR> <OMV name="x"/> <OMV name="y"/> </OMBVAR> <OMA> <OMS cd="relation1" name="geq"/> <OMA> <OMS cd="arith1" name="plus"/> <OMA> <OMS cd="arith1" name="abs"/> <OMV name="x"/> </OMA> <OMA> <OMS cd="arith1" name="abs"/> <OMV name="y"/> </OMA> </OMA> <OMA> <OMS cd="arith1" name="abs"/> <OMA> <OMS cd="arith1" name="plus"/> <OMV name="x"/> <OMV name="y"/> </OMA> </OMA> </OMA> </OMBIND> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <bind><csymbol cd="quant1">forall</csymbol> <bvar><ci>x</ci></bvar> <bvar><ci>y</ci></bvar> <apply><csymbol cd="relation1">geq</csymbol> <apply><csymbol cd="arith1">plus</csymbol> <apply><csymbol cd="arith1">abs</csymbol><ci>x</ci></apply> <apply><csymbol cd="arith1">abs</csymbol><ci>y</ci></apply> </apply> <apply><csymbol cd="arith1">abs</csymbol> <apply><csymbol cd="arith1">plus</csymbol><ci>x</ci><ci>y</ci></apply> </apply> </apply> </bind> </math>
quant1.forall[$x, $y -> arith1.abs($x) + arith1.abs($y) >= arith1.abs($x + $y)]
∀ x , y . | x | + | y | ≥ | x + y |
A binary operator which represents its first argument "lowered" to its n'th root where n is the second argument. This is the inverse of the operation represented by the power symbol defined in this CD.
Care should be taken as to the precise meaning of this operator, in particular which root is represented, however it is here to represent the general notion of taking n'th roots. As inferred by the signature relevant to this symbol, the function represented by this symbol is the single valued function, the specific root returned is the one indicated by the first CMP. Note also that the converse of the second CMP is not valid in general.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMA> <OMS cd="logic1" name="implies"/> <OMA> <OMS cd="set1" name="in"/> <OMV name="x"/> <OMS cd="setname1" name="C"/> </OMA> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="root"/> <OMV name="x"/> <OMV name="n"/> </OMA> <OMA> <OMS name="exp" cd="transc1"/> <OMA> <OMS name="divide" cd="arith1"/> <OMA> <OMS name="ln" cd="transc1"/> <OMV name="x"/> </OMA> <OMV name="n"/> </OMA> </OMA> </OMA> </OMA> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <apply><csymbol cd="logic1">implies</csymbol> <apply><csymbol cd="set1">in</csymbol><ci>x</ci><csymbol cd="setname1">C</csymbol></apply> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">root</csymbol><ci>x</ci><ci>n</ci></apply> <apply><csymbol cd="transc1">exp</csymbol> <apply><csymbol cd="arith1">divide</csymbol> <apply><csymbol cd="transc1">ln</csymbol><ci>x</ci></apply> <ci>n</ci> </apply> </apply> </apply> </apply> </math>
set1.in($x, setname1.C) ==> arith1.root($x, $n) = exp(ln($x) / $n)
x ∈ C ⇒ x n = exp ( ln ( x ) n )
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMBIND> <OMS cd="quant1" name="forall"/> <OMBVAR> <OMV name="a"/> <OMV name="n"/> </OMBVAR> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="arith1" name="power"/> <OMA> <OMS cd="arith1" name="root"/> <OMV name="a"/> <OMV name="n"/> </OMA> <OMV name="n"/> </OMA> <OMV name="a"/> </OMA> </OMBIND> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <bind><csymbol cd="quant1">forall</csymbol> <bvar><ci>a</ci></bvar> <bvar><ci>n</ci></bvar> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="arith1">power</csymbol> <apply><csymbol cd="arith1">root</csymbol><ci>a</ci><ci>n</ci></apply> <ci>n</ci> </apply> <ci>a</ci> </apply> </bind> </math>
quant1.forall[$a, $n -> arith1.root($a, $n) ^ $n = $a]
An operator taking two arguments, the first being the range of summation, e.g. an integral interval, the second being the function to be summed. Note that the sum may be over an infinite interval.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMA> <OMS cd="arith1" name="sum"/> <OMA> <OMS cd="interval1" name="integer_interval"/> <OMI> 1 </OMI> <OMI> 10 </OMI> </OMA> <OMBIND> <OMS cd="fns1" name="lambda"/> <OMBVAR> <OMV name="x"/> </OMBVAR> <OMA> <OMS cd="arith1" name="divide"/> <OMI> 1 </OMI> <OMV name="x"/> </OMA> </OMBIND> </OMA> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <apply><csymbol cd="arith1">sum</csymbol> <apply><csymbol cd="interval1">integer_interval</csymbol> <cn type="integer">1</cn> <cn type="integer">10</cn> </apply> <bind><csymbol cd="fns1">lambda</csymbol> <bvar><ci>x</ci></bvar> <apply><csymbol cd="arith1">divide</csymbol><cn type="integer">1</cn><ci>x</ci></apply> </bind> </apply> </math>
arith1.sum(interval1.integer_interval(1, 10), fns1.lambda[$x -> 1 / $x])
An operator taking two arguments, the first being the range of multiplication e.g. an integral interval, the second being the function to be multiplied. Note that the product may be over an infinite interval.
<OMOBJ xmlns="http://www.openmath.org/OpenMath" version="2.0" cdbase="http://www.openmath.org/cd"> <OMA> <OMS cd="relation1" name="eq"/> <OMA> <OMS cd="integer1" name="factorial"/> <OMV name="n"/> </OMA> <OMA> <OMS cd="arith1" name="product"/> <OMA> <OMS cd="interval1" name="integer_interval"/> <OMI> 1 </OMI> <OMV name="n"/> </OMA> <OMBIND> <OMS cd="fns1" name="lambda"/> <OMBVAR> <OMV name="i"/> </OMBVAR> <OMV name="i"/> </OMBIND> </OMA> </OMA> </OMOBJ>
<math xmlns="http://www.w3.org/1998/Math/MathML"> <apply><csymbol cd="relation1">eq</csymbol> <apply><csymbol cd="integer1">factorial</csymbol><ci>n</ci></apply> <apply><csymbol cd="arith1">product</csymbol> <apply><csymbol cd="interval1">integer_interval</csymbol><cn type="integer">1</cn><ci>n</ci></apply> <bind><csymbol cd="fns1">lambda</csymbol><bvar><ci>i</ci></bvar><ci>i</ci></bind> </apply> </apply> </math>
integer1.factorial($n) = arith1.product(interval1.integer_interval(1, $n), fns1.lambda[$i -> $i])
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.5