OpenMath

OpenMath jest standardem opisującym semantykę formuł matematycznych . W przeciwieństwie do programów do składu, takich jak TeX , które wyświetlają tylko formuły, OpenMath próbuje przedstawić treść matematyczną według własnych praw. OpenMath może służyć do opisywania semantyki formuł, których prezentacja jest zapisana w języku MathML .

zakres

Standard OpenMath definiuje obiekty OpenMath („Obiekty OpenMath”), abstrakcyjny typ danych do opisu struktury funkcjonalnej formuł matematycznych, jako wyrażenia składające się z symboli („Symbole OpenMath”), zmiennych („Zmienne OpenMath”) i aplikacji funkcji („Aplikacje OpenMath” ") I wiążące wyrażenia (" OpenMath Binding Object "). Znaczenie symbolu jest określane poprzez odniesienie do jego definicji w słowniku treści („słownik treści”, CD). Płyty CD to zbiory definicji pojęć matematycznych. Istnieje zestaw standaryzowanych słowników treści, w których predefiniowane są symbole znane z Content MathML. Dyski CD są również wyraźnie przeznaczone do dodawania nowych symboli do Content MathML.

fabuła

OpenMath był rozwijany w ramach długiej serii warsztatów i (głównie europejskich) projektów od 1993 roku . Standard OpenMath 1.0 został opublikowany w lutym 2000 roku i rozszerzony jako OpenMath 1.1 w październiku 2002. Standard OpenMath 2.0 został opublikowany dwa lata później, w czerwcu 2004 roku. OpenMath 1 ustanowił podstawową architekturę. OpenMath 2 rozszerzył to o lepszą integrację XML, współdzielenie struktury i abstrakcyjne płyty CD.

OpenMath Society

Działania OpenMath są koordynowane przez OpenMath Society z siedzibą w Helsinkach , Finlandia . Towarzystwo zrzesza twórców matematycznych systemów oprogramowania, wydawców i autorów. Członkostwo przyznaje zarząd; Jednak aplikacje od osób, które pracowały nad OpenMath w zakresie badań lub aplikacji, są również mile widziane. Prezesem OpenMath Society jest Michael Kohlhase (od 2007).

przykład

Dobrze znana formuła kwadratowa

jest reprezentowany w OpenMath w następujący sposób (jest to wyrażenie podobne do drzewa, którego części funkcjonalne są reprezentowane za pomocą elementów XML , takich jak OMA dla aplikacji funkcji lub OMV dla zmiennych):

<OMOBJ  xmlns="http://www.openmath.org/OpenMath">
  <OMA cdbase="http://www.openmath.org/cd">
    <OMS cd="relation1" name="eq"/>
    <OMV name="x"/>
    <OMA>
      <OMS cd="arith1" name="divide"/>
      <OMA>
        <OMS cd="multiops" name="plusminus"/>
        <OMA>
          <OMS cd="arith1" name="unary_minus"/>
          <OMV name="b"/>
        </OMA>
        <OMA>
          <OMS cd="arith1" name="root"/>
          <OMA>
            <OMS cd="arith1" name="minus"/>
            <OMA>
              <OMS cd="arith1" name="power"/>
              <OMV name="b"/>
              <OMI>2</OMI>
            </OMA>
            <OMA>
              <OMS cd="arith1" name="times"/>
              <OMI>4</OMI>
              <OMV name="a"/>
              <OMV name="c"/>
            </OMA>
          </OMA>
          <OMI>2</OMI>
        </OMA>
      </OMA>
      <OMA>
        <OMS cd="arith1" name="times"/>
        <OMI>2</OMI>
        <OMV name="a"/>
      </OMA>
    </OMA>
  </OMA>
</OMOBJ>

W tym wyrażeniu symbole - tj. Elementy takie jak <OMS cd = "arith1" name = "times" /> - oznaczają funkcje matematyczne, które są stosowane do ich siostrzanych elementów w elementach OMA . Są one interpretowane jako argumenty. Element OMS oznacza pojęcie matematyczne zdefiniowane w słowniku treści, które jest określone przez atrybut cd . (Ten dokument XML można znaleźć pod adresem URI podanym w następnym dominującym atrybucie cdbase . W powyższym przykładzie wszystkie symbole arytmetyczne pochodzą z płyty CD ( arith1 patrz poniżej).)

Słowniki zawartości OpenMath

Dyski CD to uporządkowane dokumenty XML, które definiują symbole matematyczne, do których mogą się odwoływać elementy OMS w obiektach OpenMath. Standard OpenMath-2 nie naprawia kanonicznej składni dysków CD, ale wymaga jedynie infrastruktury wystarczającej do odwoływania się w elementach „OMS”. Sam OpenMath używa bardzo prostej składni opartej na XML i dostarcza płyty CD dla niektórych obszarów matematycznych. W szczególności obsługiwany jest „fragment matematyki K-14” (z grubsza odpowiednik matematyki do niemieckiego matury ), który jest również używany w Content MathML .

OMDoc dla większych kontekstów

Format OMDoc może być używany do osadzania formuł OpenMath w większych kontekstach . OMDoc zapewnia struktury dla instrukcji matematycznych, takich jak definicja, twierdzenie, dowód i przykład, które mogą zawierać formuły OpenMath. Grupy stwierdzeń powiązanych kontekstowo można łączyć w teorie. Postrzegana jako zbiór definicji symboli, teoria OMDoc jest zgodna ze słownikiem treści OpenMath.

krytyka

OpenMath jest krytykowany za to, że jest nieodpowiedni dla matematyki ogólnej, nie oferuje wystarczających środków formalnych do arytmetyki zmiennoprzecinkowej, nie dostarczył żadnych dowodów praktycznego zastosowania pomimo lat pracy nad koncepcją i jest gorszy od ustalonych mechanizmów kodowania semantyki matematycznej, wśród innych punktów krytyki.

linki internetowe

Indywidualne dowody

  1. The OpenMath Society , na openmath.org, dostęp 8 października 2018
  2. Richard J. Fateman: [ http://www.cs.berkeley.edu/~fateman/papers/openmathcrit.pdf A Critique of OpenMath and Thoughts on Encoding Mathematics] . Uniwersytet Kalifornijski. 17 stycznia 2001. Źródło 25 kwietnia 2015.