Home Online Manual
Top
Back: gaussColWithoutPerm
Forward: writeBertiniInput
FastBack:
FastForward:
Up: recover_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.8.7.7 getWitnessSet

Procedure from library recover.lib (see recover_lib).

Usage:
getWitnessSet();

Assume:
There is a text-document "main_data" in the current directory which was produced by Bertini.
The basefield is the field of real numbers or the field of complex numbers.

Return:
list; a list P of lists p_i of numbers: P a set of witness points

Note:
Reads the file "main_data", searches the strings containing the witness points, and converts them into floating point numbers.

Example:
 
LIB "recover.lib";
//First, we write the input file for bertini, then run bertini
ring r=0,(x,y,z),dp;
ideal I=(x-y)*(y-z)*(x-z);
writeBertiniInput(I,40);
system("sh","bertini input");
==> 
==>    Bertini(TM) v1.6
==>     (May 22, 2018)
==> 
==>  D.J. Bates, J.D. Hauenstein,
==>  A.J. Sommese, C.W. Wampler
==> 
==> (using GMP v6.0.0, MPFR v3.1.2)
==> 
==> 
==> 
==> NOTE: You have requested to use adaptive path tracking.  Please make sure\
    that you have
==> setup the following tolerances appropriately:
==> CoeffBound: 6.000000000000e+00, DegreeBound: 3.000000000000e+00
==> AMPSafetyDigits1: 1, AMPSafetyDigits2: 1, AMPMaxPrec: 160
==> 
==> 
==> Tracking regeneration codim 1 of 1: 3 paths to track.
==> Tracking path 0 of 3
==> Tracking path 1 of 3
==> Tracking path 2 of 3
==> 
==> Sorting codimension 1 of 1: 3 paths to sort.
==> Sorting 0 of 3
==> Sorting 1 of 3
==> Sorting 2 of 3
==> 
==> 
==> ************ Regenerative Cascade Summary ************
==> 
==> NOTE: nonsingular vs singular is based on rank deficiency and identical e\
   ndpoints
==> 
==> |codim|   paths   |witness superset| nonsingular | singular |nonsolutions\
   | inf endpoints | other bad endpoints
==> ----------------------------------------------------------------------------------------------------------------
==> | 1   |   3       |   3            |  3          |  0       |  0         \
   |   0           |  0
==> ----------------------------------------------------------------------------------------------------------------
==> |total|   3
==> 
==> ****************************************************
==> 
==> 
==> 
==> *************** Witness Set Summary ****************
==> 
==> NOTE: nonsingular vs singular is based on rank deficiency and identical e\
   ndpoints
==> 
==> |codim| witness points | nonsingular | singular 
==> -------------------------------------------------
==> | 1   |   3            |  3          |  0       
==> -------------------------------------------------
==> 
==> ****************************************************
==> 
==> 
==> Calculating traces for codimension 1.
==> Calculating 0 of 3
==> Calculating 1 of 3
==> Calculating 2 of 3
==> 
==> Using combinatorial trace test to decompose codimension 1.
==> 
==> 
==> ************* Witness Set Decomposition *************
==> 
==> | dimension | components | classified | unclassified
==> -----------------------------------------------------
==> |   1       |   0        |   0        |  3
==> -----------------------------------------------------
==> 
==> ************** Decomposition by Degree **************
==> 
==> *****************************************************
==> 
==> 0
//Then we change the ring and extract the witness set from main_data
ring R=(complex,40,i),(x,y,z),dp;
list P=getWitnessSet();
P;
==> [1]:
==>    [1]:
==> (-0.1700440672538715403442909582639804208342-i*2.581702953597494416836308\
   230741177346522)
==>    [2]:
==> (-0.1700440672538715403442909582639804208342-i*2.581702953597494416836308\
   230741177346522)
==>    [3]:
==> (1.720096397321114210148679669756446354063+i*1.89180697231243596578451232\
   1447231379086)
==> [2]:
==>    [1]:
==> (0.4224122563123563496329250104654168155349-i*0.2284478090752330245680570\
   795872539980984)
==>    [2]:
==> (-0.4553975039729983460301354400567967070891-i*0.008932571118950168188995\
   102448027592698444)
==>    [3]:
==> (0.4224122563123563496329250104654168155349-i*0.2284478090752330245680570\
   795872539980984)
==> [3]:
==>    [1]:
==> (0.8620572814697307990423258484365193771208-i*0.3545015010500095166072155\
   735124396210698)
==>    [2]:
==> (0.03098874096275163411757614912382152691518+i*0.029018953290143862901809\
   72955269329537814)
==>    [3]:
==> (0.03098874096275163411757614912382152691518+i*0.029018953290143862901809\
   72955269329537814)