## A bevy of requests

Feature requests go here.
kundor
Posts: 9
Joined: 15 Jul 2013, 14:53

### A bevy of requests

It would be great if support for the E6 and E7 groups could be added to the $\texttt{wythoff}$ polytope constructor. Looking at simple_roots.cc, it seems this is just a matter of adding the root systems, which can be found on e.g. Wikipedia. At first I thought that the obstruction was that the simple roots include square roots, so they're not of type $\texttt{SparseMatrix<Rational>}$, but then I saw that $\texttt{simple_roots_type_H4}$ returns a $\texttt{SparseMatrix<QE>}$ with square roots.
Is there some other obstruction?

E8 is implemented, but the labeling of the nodes is unclear. The source code in simple_roots.cc says

Code: Select all

 7 | | 0 ---- 1 ---- 2 ---- 3 ---- 4 ---- 5 ---- 6 
But in the perl interface, $\texttt{help 'simple_roots_type_E8'}$ says

Code: Select all

 7 | | 0 ---- 1 ---- 2 ---- 3 ---- 4 ---- 5 ---- 6 
It would be nice if the function $\texttt{pyramid(P, z)}$, where z is a Rational giving the height of the new apex, took z of type QuadraticExtension as well. This would allow, for example, the recursive construction of a full-dimensional regular simplex via

Code: Select all

$n++;$t = pyramid($t, new QuadraticExtension(0,new Rational(1,2*$n),2*$n*($n+1))); 
(starting from $n=1$, with $t a length-1 line segment.) Speaking of this, constructing a full-dimensional regular simplex seems overly difficult. I would really appreciate a $\texttt{regular_simplex}$ method, to go along with $\texttt{cube}$ and $\texttt{cross}$ ($\texttt{simplex}$ produces a "standard" simplex, which is not regular.) The function $\texttt{wythoff("An", new Set<Int>(0))}$ produces a regular n-simplex in (n+1) dimensions, which is not full dimensional, and using $\texttt{projection_full}$ on this results in a standard simplex again. Other polytope construction functions, such as $\texttt{edge_middle}$ and $\texttt{truncation}$, could also be updated to work with QuadraticExtension. In polymake 2.13 (and the current perpetual beta), both fail to produce a rectified 120-cell, presumably due to rational approximation. Code: Select all >$reg120 = regular_120_cell(); > $rect120 = edge_middle($reg120); > print $rect120->F_VECTOR; 1200 4896 5472 177  Here, $\texttt{edge_middle}$ produces spurious edges and faces, and misses many cells (the correct F_VECTOR is 1200 3600 3120 720.) Code: Select all >$rect120 = truncation($reg120,All,cutoff=>1); > print$rect120->F_VECTOR; 2400 4800 3120 720 
Here, $\texttt{truncation}$ produces spurious vertices.

$\texttt{wythoff("H4", range(1,1))}$ produces the correct polytope.

blorenz
Developer
Posts: 127
Joined: 10 Jan 2011, 17:21

### Re: A bevy of requests

Thank you very much for your suggestions, most of them will be included in the next polymake release which is due in February.

Fixed:
• E8: Both the comment and the help text were wrong and are fixed in our development version.
• There is no obstruction for E6 and E7 anymore, but quadratic extensions were not available when the first simple root systems were added. They are now added to the simple roots client and supported by wythoff.
• The pyramid client supports quadratic extensions as well.
• Many clients were templatified only very recently to support quadratic extensions. The construction of rect120 via truncation already worked in the development version and edge_middle now works as well.
With the current version of the pyramid client your construction for the regular simplex still does not work (for dimension > 2) as it would need summing over different quadratic extensions which is not supported currently. But note that there is a tetrahedron client since 2.13.
Furthermore we will probably add a regular simplex client soon.

Benjamin

kundor
Posts: 9
Joined: 15 Jul 2013, 14:53

### Re: A bevy of requests

That all sounds like very good news. I look forward to the release!
Thanks very much.