In this 2016 article Automorphisms of surfaces in a class of Wehler surfaces with Picard number
The
with respect to a fixed basis. Before proceeding further, note that Baragar uses the convention that elements
In what follows, we thus took the transpose of all the matrices involved in Baragar’s article.
In this article, Baragar states that
Regarding
- Prof. Baragar states that either
or that , - Prof Baragar states that either
or that ,
where the matrices
That is, either
We use the Poolized Borcherds method to clarify the situation regarding the automorphism group of Baragar’s Wehler
Doing so will enable us to obtain a precise answer regarding
As explained here, the preliminary input required consists of a Gram matrix of
If you are currently on the demo server, or if you downloaded our archive containing the folder ThesisPrograms, please open a Sage console and proceed as follows :
INPUT_DATA = load('INPUT_DATA/DEMO/INPUT_DATA_WEHLER_PICARD_FOUR.sobj')

Load init_emb to set up the initial environment for the Borcherds’ method :
load('init_emb.sage')

Note that the ample class
We will find another class with more “realistic” coefficients.
Load proj_mod, and let’s use AmpTester to find another ample class.
Let’s try
load('proj_mod') ;
AmpTester(Matrix([100,20,60,5]))

Fine. Let’s define :
INPUT_DATA[2] = Matrix([100,20,60,5])
and load init_emb again :
load('init_emb.sage')
We are ready to take off.
First, we start by checking whether applying the Borcherds’ method to the
load('ker_checker.sage')

Great.
The Borcherds method will provide.
Load degentest to determine whether we have in hand a nondegenerate
load('degentest.sage')

Our initial embedding has to be updated.
To this end, we load our modernized version of Shimada’s embedding update procedure :
load('emb_updater2.sage')
The mechanics behind this procedure are explained in section 1.8.3 of our thesis.

The further the procedure progresses, the fewer obstructions there are (again, please take a look at section 1.8.3 of our thesis for more details) :

The procedure finally obtains an updated embedding :

Let’s apply degentest again :
load('degentest.sage')

Great! We are ready to launch the Borcherds method!
Assign the strings of your choices for the variables text1 and text2, which will be used to personalize the name of the files produced by the method :
text1 = str('Wehler_picard_4')
text2 = str('Baragar')
Since we are running the program on our demo server, we only have
nb_workers = 8
We then launch the Poolized Borcherds’ method (process-based parallelism with Pool) :
load('borcherds.sage')

Since we don’t like waiting, we also launched the computation on must faster machine than the demo server, with an allocation of 20 workers. Here is the result :

The Borcherds’ method thus returns that a generating set of
Before focusing on Baragar’s study, let’s apply our program fundamentalizer in the hope that interesting data regarding the above-mentioned fundamental domain can be extracted :
load('fundamentalizer.sage')

The program fundamentalizer will start a thorough analysis of the walls of the chambers forming the fundamental domain to identify its boundary walls.
This analysis will enable fundamentalizer to determine whether a convex cone can be associated with the fundamental domain. The program will return a Hilbert basis of the fundamental domain when this is the case.

We thus obtain that
We now return to Baragar’s study of the automorphism group of this Wehler
We will try to find an answer regarding each transformation
Baragar indicated that
Taking a look at the generating set
What about
Since we just saw that
Let’s use our function AutTester to check whether
In case the outcome of this test is False, Prof. Baragar’s interrogations regarding
T1 = Matrix([[-1,2,2,0],[0,1,0,0],[0,0,1,0],[-1,1,1,1]])
AutTester(T1)

Thus, the matrix
The Borcherds’ method enables us to assert that Baragar was right regarding
About
Again, Baragar was on point.
Similarly, Prof. Baragar’s automorphism
Regarding
We have
Let’s determine which one of these transformations satisfies the conditions required for it to be an element of
AutTester(T4)

We can thus assert with total certainty that
Testing the element
AutTester(S1*sigma3ast*T4)

Let’s prove it by expressing
At first glance, we cannot decide on this transformation. Let’s dig deeper.
Let’s try a brute force approach. Define
GID = GAMMA + [q.inverse() for q in GAMMA] + [matrix.identity(4)]
and remove the eventual duplicates by using the function duplikiller :
GID = duplikiller(GID)
Compute the set of words of length 6 in the free group generated by the elements of GID :
WORDS=[(a,b,c,d,e,f,a*b*c*d*e*f) for a in GID for b in GID for c in GID for d in GID for e in GID for f in GID]
We now check whether
S1*sigma3ast*T4 in [q[6] for q in WORDS]

Great! Let’s retrieve the expression of this transformation as a product of the generators :

That is,
Thus, the group generated by
The latter enables us to assert that a full generating set of the automorphism group of this Wehler