Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • M MathJax
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 304
    • Issues 304
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 15
    • Merge requests 15
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • MathJax
  • MathJax
  • Merge requests
  • !2184

Fix various issues in content-mathml.js

  • Review changes

  • Download
  • Email patches
  • Plain diff
Open S.Y. Lee requested to merge github/fork/sylee957/fix_content_mathml into legacy-v2-develop Aug 30, 2019
  • Overview 3
  • Commits 4
  • Pipelines 1
  • Changes 1
HTML code for test examples

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <script>window.MathJax = {MathML: {extensions: ["content-mathml.js"]}};</script>
  <script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-MML-AM_CHTML"></script>
</head>
<body>

<h1 align='Center'>Set Operations</h1>

<h2 align='Center'>Unions</h1>

<math display="block">
<apply>
    <union/>
    <ci> A </ci>
    <ci> B </ci>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <ci> A </ci>
    <ci> B </ci>
    <ci> C </ci>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <ci> A </ci>
    <ci> B </ci>
    <ci> C </ci>
    <ci> D </ci>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <ci> A </ci>
    <apply>
        <union/>
        <ci> B </ci>
        <ci> C </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <apply>
        <union/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <ci> C </ci>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <apply>
        <union/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <union/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <bvar><ci type="set"> S </ci></bvar>
    <domainofapplication><ci type="list">L</ci></domainofapplication>
    <ci type="set"> S </ci>
</apply>
</math>

<h2 align='Center'>Complement</h1>

<math display="block">
<apply>
    <setdiff/>
    <ci> A </ci>
    <ci> B </ci>
</apply>
</math>

<h2 align='Center'>Combined</h1>

<math display="block">
<apply>
    <in/>
    <ci> a </ci>
    <apply>
        <intersect/>
        <ci> B </ci>
        <ci> C </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <notin/>
    <apply>
        <times/>
        <ci> a </ci>
        <ci> b </ci>
    </apply>
    <apply>
        <intersect/>
        <ci> B </ci>
        <ci> C </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <notin/>
    <ci> a </ci>
    <apply>
        <setdiff/>
        <ci> B </ci>
        <ci> C </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <subset/>
    <ci> A </ci>
    <apply>
        <intersect/>
        <ci> B </ci>
        <ci> C </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <prsubset/>
    <apply>
        <intersect/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <intersect/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <ci> A </ci>
    <apply>
        <intersect/>
        <ci> B </ci>
        <ci> C </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <apply>
        <intersect/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <ci> C </ci>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <apply>
        <intersect/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <intersect/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <intersect/>
    <apply>
        <union/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <union/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <intersect/>
    <apply>
        <union/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <intersect/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <apply>
        <intersect/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <union/>
        <bvar><ci type="set"> S </ci></bvar>
        <domainofapplication><ci type="list">L</ci></domainofapplication>
        <ci type="set"> S </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <intersect/>
    <apply>
        <setdiff/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <setdiff/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <intersect/>
    <apply>
        <cartesianproduct/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <cartesianproduct/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <cartesianproduct/>
    <apply>
        <intersect/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <intersect/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<h1 align='Center'>Arithmetic Operations</h1>

<h2 align='Center'>Additions</h1>

<math display="block">
<apply>
    <plus/>
    <apply>
        <plus/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <plus/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <plus/>
    <ci> A </ci>
    <ci> B </ci>
    <ci> C </ci>
    <ci> D </ci>
</apply>
</math>

<h2 align='Center'>Multiplications</h1>

<math display="block">
<apply>
    <times/>
    <apply>
        <times/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <times/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <times/>
    <ci> A </ci>
    <ci> B </ci>
    <ci> C </ci>
    <ci> D </ci>
</apply>
</math>

<h2 align='Center'>Divisions</h1>

<math display="block">
    <apply>
        <divide/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
</math>

<math display="block">
<apply>
    <divide/>
    <apply>
        <divide/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <divide/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<h2 align='Center'>Quotients</h1>

<math display="block">
    <apply>
        <quotient/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
</math>

<math display="block">
<apply>
    <quotient/>
    <apply>
        <quotient/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <quotient/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <quotient/>
    <apply>
        <plus/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <times/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<h2 align='Center'>Subtractions</h1>

<math display="block">
<apply>
    <minus/>
    <ci> A </ci>
    <ci> B </ci>
</apply>
</math>

<math display="block">
<apply>
    <minus/>
    <apply>
        <minus/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <minus/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <minus/>
    <apply>
        <minus/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <minus/>
    <ci> A </ci>
</apply>
</math>

<h2 align='Center'>Powers</h1>

<math display="block">
<apply>
    <power/>
    <ci> A </ci>
    <ci> b </ci>
</apply>
</math>

<math display="block">
<apply>
    <power/>
    <ci> A </ci>
    <apply>
        <power/>
        <ci> b </ci>
        <ci> c </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <power/>
    <ci> A </ci>
    <apply>
        <power/>
        <ci> b </ci>
        <apply>
            <power/>
            <ci> c </ci>
            <ci> d </ci>
        </apply>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <power/>
    <apply>
        <power/>
        <ci> A </ci>
        <ci> b </ci>
    </apply>
    <ci> c </ci>
</apply>
</math>

<h2 align='Center'>Factorials</h1>

<math display="block">
<apply>
    <factorial/>
    <ci> a </ci>
</apply>
</math>

<math display="block">
<apply>
    <factorial/>
    <apply>
        <factorial/>
        <ci> a </ci>
    </apply>
</apply>
</math>

<h2 align='Center'>Combined</h1>

<math display="block">
<apply>
    <plus/>
    <apply>
        <times/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <times/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <plus/>
    <apply>
        <minus/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <rem/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <times/>
    <apply>
        <plus/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <plus/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <rem/>
    <apply>
        <plus/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <plus/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <factorial/>
    <apply>
        <exp/>
        <ci>a</ci>
    </apply>
</apply>
</math>

<h1 align='Center'>Matrices</h1>

<h2 align='Center'>Selector</h1>

<math display="block">
<apply>
    <selector/>
    <ci> A </ci>
    <ci> m </ci>
</apply>
</math>

<math display="block">
<apply>
    <selector/>
    <ci> A </ci>
    <ci> m </ci>
    <ci> n </ci>
</apply>
</math>

<math display="block">
<apply>
    <selector/>
    <apply>
        <selector/>
        <ci> A </ci>
        <ci> m </ci>
    </apply>
    <ci> n </ci>
</apply>
</math>

<math display="block">
<apply>
    <selector/>
    <apply>
        <selector/>
        <ci> A </ci>
        <ci> m </ci>
        <ci> n </ci>
    </apply>
    <ci> o </ci>
    <ci> p </ci>
</apply>
</math>

<h2 align='Center'>Matrix Transpose</h1>

<math display="block">
<apply>
    <transpose/>
    <ci> A </ci>
</apply>
</math>

<math display="block">
<apply>
    <transpose/>
    <apply>
        <transpose/>
        <ci> A </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <transpose/>
    <apply>
        <transpose/>
        <apply>
            <transpose/>
            <ci> A </ci>
        </apply>
    </apply>
</apply>
</math>

<h1 align='Center'>Logical Operations</h1>

<math display="block">
<apply>
    <and/>
    <apply>
        <or/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <or/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <or/>
    <apply>
        <and/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <and/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <or/>
    <apply>
        <xor/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <xor/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <xor/>
    <apply>
        <xor/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <xor/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <xor/>
    <ci> A </ci>
    <ci> B </ci>
    <ci> C </ci>
    <ci> D </ci>
</apply>
</math>

<math display="block">
<apply>
    <implies/>
    <apply>
        <and/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <and/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>


<math display="block">
<apply>
    <and/>
    <apply>
        <gt/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <lt/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <and/>
    <apply>
        <eq/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <neq/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <or/>
    <apply>
        <and/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <and/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <and/>
    <apply>
        <and/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
    <apply>
        <and/>
        <ci> C </ci>
        <ci> D </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <and/>
    <ci> A </ci>
    <ci> B </ci>
    <ci> C </ci>
    <ci> D </ci>
</apply>
</math>

<math display="block">
<apply>
    <not/>
    <ci>a</ci>
</apply>
</math>

<math display="block">
<apply>
    <not/>
    <apply>
        <not/>
        <ci>a</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <not/>
    <apply>
        <ci>f</ci>
        <ci>a</ci>
    </apply>
</apply>
</math>

<h1 align='Center'>Sums, Products</h1>

<math display="block">
<apply>
    <plus/>
    <apply>
        <sum/>
        <bvar><ci> x </ci></bvar>
        <lowlimit>
            <ci> a </ci>
        </lowlimit>
        <uplimit>
            <ci> b </ci>
        </uplimit>
        <ci> x </ci>
    </apply>
    <ci> y </ci>
</apply>
</math>

<math display="block">
<apply>
    <sum/>
    <bvar><ci> x </ci></bvar>
    <lowlimit>
        <ci> a </ci>
    </lowlimit>
    <uplimit>
        <ci> b </ci>
    </uplimit>
    <apply>
        <plus/>
        <ci> x </ci>
        <ci> y </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <times/>
    <apply>
        <sum/>
        <bvar><ci> x </ci></bvar>
        <lowlimit>
            <ci> a </ci>
        </lowlimit>
        <uplimit>
            <ci> b </ci>
        </uplimit>
        <ci> x </ci>
    </apply>
    <ci> y </ci>
</apply>
</math>

<math display="block">
<apply>
    <sum/>
    <bvar><ci> x </ci></bvar>
    <lowlimit>
        <ci> a </ci>
    </lowlimit>
    <uplimit>
        <ci> b </ci>
    </uplimit>
    <apply>
        <times/>
        <ci> x </ci>
        <ci> y </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <sum/>
    <bvar><ci> y </ci></bvar>
    <lowlimit>
        <ci> a </ci>
    </lowlimit>
    <uplimit>
        <ci> b </ci>
    </uplimit>

    <apply>
        <sum/>
        <bvar><ci> x </ci></bvar>
        <lowlimit>
            <ci> a </ci>
        </lowlimit>
        <uplimit>
            <ci> b </ci>
        </uplimit>
        <apply>
            <plus/>
            <ci> x </ci>
            <ci> y </ci>
        </apply>
    </apply>
</apply>
</math>

<h1 align='Center'>Integrals</h1>

<math display="block">
<apply>
    <int/>
    <bvar><ci> x </ci></bvar>
    <lowlimit><cn> 0 </cn></lowlimit>
    <uplimit><ci> a </ci></uplimit>
    <apply>
        <ci> f </ci>
        <ci> x </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <int/>
    <bvar><ci> x </ci></bvar>
    <lowlimit><cn> 0 </cn></lowlimit>
    <uplimit><ci> a </ci></uplimit>
    <apply>
        <int/>
        <bvar><ci> x </ci></bvar>
        <lowlimit><cn> 0 </cn></lowlimit>
        <uplimit><ci> a </ci></uplimit>
        <apply>
            <ci> f </ci>
            <ci> x </ci>
        </apply>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <int/>
    <bvar><ci> y </ci></bvar>
    <lowlimit><cn> 0 </cn></lowlimit>
    <uplimit><ci> b </ci></uplimit>
    <apply>
        <int/>
        <bvar><ci> x </ci></bvar>
        <lowlimit><cn> 0 </cn></lowlimit>
        <uplimit><ci> a </ci></uplimit>
        <apply>
            <plus/>
            <ci> x </ci>
            <ci> y </ci>
        </apply>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <int/>
    <sin/>
</apply>
</math>

<math display="block">
<apply>
    <int/>
    <apply>
        <int/>
        <sin/>
    </apply>
</apply>
</math>

<h1 align='Center'>n-ary set operations</h1>

<math display="block">
<apply>
    <union/>
    <bvar><ci> A </ci></bvar>
    <domainofapplication><ci type="list">L</ci></domainofapplication>
    <ci> A </ci>
</apply>
</math>

<math display="block">
<apply>
    <intersect/>
    <apply>
        <union/>
        <bvar><ci> A </ci></bvar>
        <domainofapplication><ci type="list">L</ci></domainofapplication>
        <ci> A </ci>
    </apply>
    <ci>B</ci>
</apply>
</math>

<math display="block">
<apply>
    <union/>
    <bvar><ci> A </ci></bvar>
    <domainofapplication><ci type="list">L</ci></domainofapplication>
    <apply>
        <intersect/>
        <ci> A </ci>
        <ci> B </ci>
    </apply>
</apply>
</math>

<h1 align='Center'>Exponential</h1>

<math display="block">
<apply>
    <exp/>
    <ci> a </ci>
</apply>
</math>

<math display="block">
<apply>
    <exp/>
    <apply>
        <exp/>
        <ci> a </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <exp/>
    <apply>
        <times/>
        <ci> a </ci>
        <ci> b </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <exp/>
    <apply>
        <plus/>
        <ci> a </ci>
        <ci> b </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <exp/>
    <apply>
        <power/>
        <ci> a </ci>
        <ci> b </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <power/>
    <apply>
        <exp/>
        <ci>a</ci>
    </apply>
    <ci>b</ci>
</apply>
</math>

<math display="block">
<apply>
    <power/>
    <ci>a</ci>
    <apply>
        <exp/>
        <ci>b</ci>
    </apply>
</apply>
</math>

<h1 align='Center'>Vectors</h1>

<h2 align='Center'>Gradient, Curl, Divergence, Laplacian</h2>

<math display="block">
<vector>
    <cn> x </cn>
    <cn> y </cn>
    <ci> z </ci>
</vector>
</math>

<math display="block">
<apply>
    <grad/>
    <vector>
        <cn> x </cn>
        <cn> y </cn>
        <ci> z </ci>
    </vector>
</apply>
</math>

<math display="block">
<apply>
    <grad/>
    <ci>x</ci>
</apply>
</math>

<math display="block">
<apply>
    <laplacian/>
    <vector>
        <cn> x </cn>
        <cn> y </cn>
        <ci> z </ci>
    </vector>
</apply>
</math>

<math display="block">
<apply>
    <laplacian/>
    <ci>x</ci>
</apply>
</math>

<math display="block">
<apply>
    <curl/>
    <vector>
        <cn> x </cn>
        <cn> y </cn>
        <ci> z </ci>
    </vector>
</apply>
</math>

<math display="block">
<apply>
    <curl/>
    <ci>x</ci>
</apply>
</math>

<math display="block">
<apply>
    <curl/>
    <apply>
        <curl/>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <divergence/>
    <vector>
        <cn> x </cn>
        <cn> y </cn>
        <ci> z </ci>
    </vector>
</apply>
</math>

<math display="block">
<apply>
    <divergence/>
    <ci>x</ci>
</apply>
</math>

<h2 align='Center'>Combined</h2>

<math display="block">
<apply>
    <divergence/>
    <apply>
        <curl/>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <curl/>
    <apply>
        <grad/>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <divergence/>
    <apply>
        <grad/>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <divergence/>
    <apply>
        <times/>
        <ci>a</ci>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <grad/>
    <apply>
        <times/>
        <ci>a</ci>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <grad/>
    <apply>
        <plus/>
        <ci>a</ci>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <laplacian/>
    <apply>
        <plus/>
        <ci>a</ci>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <grad/>
    <apply>
        <conjugate/>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <curl/>
    <apply>
        <conjugate/>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <laplacian/>
    <apply>
        <conjugate/>
        <ci>x</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <divergence/>
    <apply>
        <conjugate/>
        <ci>x</ci>
    </apply>
</apply>
</math>

<h1 align='Center'>Functions</h1>

<math display="block">
<apply>
    <ci>f</ci>
    <ci>x</ci>
</apply>
</math>

<math display="block">
<apply>
    <apply>
        <inverse/>
        <ci>f</ci>
    </apply>
    <ci>x</ci>
</apply>
</math>

<math display="block">
<apply>
    <apply>
        <inverse/>
        <apply>
            <inverse/>
            <ci>f</ci>
        </apply>
    </apply>
    <ci>x</ci>
</apply>
</math>

<math display="block">
<apply>
    <apply>
        <inverse/>
        <apply>
            <compose/>
            <ci>f</ci>
            <ci>g</ci>
        </apply>
    </apply>
    <ci>x</ci>
</apply>
</math>

<h1 align='Center'>Derivatives</h1>

<math display="block">
<apply>
    <diff/>
    <ci> f </ci>
</apply>
</math>

<math display="block">
<apply>
    <diff/>
    <apply>
        <diff/>
        <ci> f </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <diff/>
    <apply>
        <compose/>
        <ci> f </ci>
        <ci> g </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <diff/>
    <bvar><ci> x </ci></bvar>
    <apply>
        <ci> f </ci>
        <ci> x </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <diff/>
    <bvar>
        <ci> x </ci>
        <degree><ci>2</ci></degree>
    </bvar>
    <apply>
        <ci> f </ci>
        <ci> x </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <diff/>
    <bvar>
        <ci> x </ci>
    </bvar>
    <apply>
        <plus/>
        <apply>
            <ci> f </ci>
            <ci> x </ci>
        </apply>
        <apply>
            <ci> g </ci>
            <ci> x </ci>
        </apply>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <diff/>
    <bvar>
        <ci> x </ci>
    </bvar>
    <apply>
        <times/>
        <apply>
            <ci> f </ci>
            <ci> x </ci>
        </apply>
        <apply>
            <ci> g </ci>
            <ci> x </ci>
        </apply>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <diff/>
    <bvar><ci> x </ci></bvar>
    <apply>
        <diff/>
        <bvar>
            <ci>x</ci>
        </bvar>
        <apply>
            <ci> f </ci>
            <ci> x </ci>
        </apply>
    </apply>
</apply>
</math>

<h1 align='Center'>Partial Derivatives</h1>

<math display="block">
<apply>
    <partialdiff/>
    <bvar>
        <ci> x </ci>
        <degree><ci> m </ci></degree>
    </bvar>
    <bvar>
        <ci> y </ci>
        <degree><ci> n </ci></degree>
    </bvar>
    <degree><ci> k </ci></degree>
    <apply>
        <ci> f </ci>
        <ci> x </ci>
        <ci> y </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <partialdiff/>
    <bvar>
        <ci> x </ci>
    </bvar>
    <bvar>
        <ci> y </ci>
    </bvar>
    <degree><ci> 2 </ci></degree>
    <apply>
        <ci> f </ci>
        <ci> x </ci>
        <ci> y </ci>
    </apply>
</apply>
</math>


<math display="block">
<apply>
    <partialdiff/>
    <bvar>
        <ci> x </ci>
    </bvar>
    <bvar>
        <ci> y </ci>
    </bvar>
    <apply>
        <ci> f </ci>
        <ci> x </ci>
        <ci> y </ci>
    </apply>
</apply>
</math>


<math display="block">
<apply>
    <partialdiff/>
    <bvar>
        <ci> x </ci>
        <degree><ci> 2 </ci></degree>
    </bvar>
    <bvar>
        <ci> y </ci>
        <degree><ci> 3 </ci></degree>
    </bvar>
    <apply>
        <ci> f </ci>
        <ci> x </ci>
        <ci> y </ci>
    </apply>
</apply>
</math>


<math display="block">
<apply>
    <partialdiff/>
    <bvar>
        <ci> x </ci>
        <degree><ci> a </ci></degree>
    </bvar>
    <bvar>
        <ci> y </ci>
        <degree><ci> b </ci></degree>
    </bvar>
    <apply>
        <ci> f </ci>
        <ci> x </ci>
        <ci> y </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <partialdiff/>
    <bvar>
        <ci> x </ci>
        <degree><ci> a </ci></degree>
    </bvar>
    <bvar>
        <ci> y </ci>
        <degree><ci> 3 </ci></degree>
    </bvar>
    <apply>
        <ci> f </ci>
        <ci> x </ci>
        <ci> y </ci>
    </apply>
</apply>
</math>


<math display="block">
<apply>
    <partialdiff/>
    <bvar>
        <ci> x </ci>
    </bvar>
    <bvar>
        <ci> y </ci>
    </bvar>
    <degree><ci> 2 </ci></degree>
    <apply>
        <plus/>
        <apply>
            <ci> f </ci>
            <ci> x </ci>
            <ci> y </ci>
        </apply>
        <apply>
            <ci> f </ci>
            <ci> x </ci>
            <ci> y </ci>
        </apply>
    </apply>
</apply>
</math>


<math display="block">
<apply>
    <partialdiff/>
    <list>
        <cn>1</cn>
        <cn>1</cn>
        <cn>3</cn>
    </list>
    <ci>f</ci>
</apply>
</math>

<math display="block">
<apply>
    <partialdiff/>
    <list>
        <cn>1</cn>
        <cn>1</cn>
    </list>
    <apply>
        <partialdiff/>
        <list>
            <cn>1</cn>
            <cn>1</cn>
        </list>
        <ci>f</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <partialdiff/>
    <list>
        <cn>1</cn>
        <cn>1</cn>
    </list>
    <apply>
        <compose/>
        <ci>f</ci>
        <ci>g</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <partialdiff/>
    <list>
        <ci>a</ci>
        <ci>b</ci>
    </list>
    <apply>
        <compose/>
        <ci>f</ci>
        <ci>g</ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <partialdiff/>
    <list>
        <ci> a </ci>
    </list>
    <lambda>
        <bvar><ci> x </ci></bvar>
        <bvar><ci> y </ci></bvar>
        <apply>
            <plus/>
            <ci> x </ci>
            <cn> y </cn>
        </apply>
    </lambda>
</apply>
</math>

<math display="block">
<apply>
    <partialdiff/>
    <list>
        <ci> 1 </ci>
    </list>
    <lambda>
        <bvar><ci> x </ci></bvar>
        <bvar><ci> y </ci></bvar>
        <apply>
            <plus/>
            <ci> x </ci>
            <cn> y </cn>
        </apply>
    </lambda>
</apply>
</math>


<math display="block">
<apply>
    <partialdiff/>
    <list>
        <ci> 1 </ci>
        <ci> 2 </ci>
    </list>
    <lambda>
        <bvar><ci> x </ci></bvar>
        <bvar><ci> y </ci></bvar>
        <apply>
            <plus/>
            <ci> x </ci>
            <cn> y </cn>
        </apply>
    </lambda>
</apply>
</math>

<math display="block">
<apply>
    <partialdiff/>
    <list>
        <ci> a </ci>
        <ci> b </ci>
    </list>
    <lambda>
        <bvar><ci> x </ci></bvar>
        <bvar><ci> y </ci></bvar>
        <apply>
            <plus/>
            <ci> x </ci>
            <cn> y </cn>
        </apply>
    </lambda>
</apply>
</math>

<math display="block">
<apply>
    <partialdiff/>
    <list>
        <ci> a </ci>
        <ci> 2 </ci>
    </list>
    <lambda>
        <bvar><ci> x </ci></bvar>
        <bvar><ci> y </ci></bvar>
        <apply>
            <plus/>
            <ci> x </ci>
            <cn> y </cn>
        </apply>
    </lambda>
</apply>
</math>

<h1 align='Center'>Complex numbers</h1>

<math display="block">
<apply>
    <complex-cartesian/>
    <ci> a </ci>
    <ci> b </ci>
</apply>
</math>

<math display="block">
<apply>
    <complex-cartesian/>
    <ci> a </ci>
    <apply>
        <plus/>
        <ci> b </ci>
        <ci> c </ci>
    </apply>
</apply>
</math>

<math display="block">
<apply>
    <complex-polar/>
    <ci> a </ci>
    <ci> b </ci>
</apply>
</math>

<math display="block">
<apply>
    <complex-polar/>
    <apply>
        <plus/>
        <ci> a </ci>
        <ci> b </ci>
    </apply>
    <apply>
        <plus/>
        <ci> c </ci>
        <ci> d </ci>
    </apply>
</apply>
</math>

</body>
</html>

I've found a lot of issues in mathml-content-to-presentation converter, regarding parenthesis. For example, different set operators like union and intersect should be parenthesized correctly according to the apply scope, but they were ignored. I also see the same problem in the logical operators.

Also, things like nested powers should be parenthesized, or things become undistinguishable.

I've also made the summations and integrals to parenthesis according to the scope, and made summation to have same precedence as addition, and products, integrals as same as the multiplication. There can be some redundant parenthesis appearing for integrals, but this was the first step for making things correct and consistent.

Also, I have examples of derivatives giving errors or not printed correctly

and also fixed some redundant parenthesis for printing vector operators.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: github/fork/sylee957/fix_content_mathml