Upload
tarak
View
23
Download
0
Embed Size (px)
DESCRIPTION
Integration of SnapPea, K2K and bTd using JAVA interface by M. Ochiai. Topology and Computer Akita University September 5~7, 2007. Integration of SnapPea, K2K, and bTd. Data exchanges of SnapPea and K2K. Input a knot by mouse-tracking. K2K. Configuration data of SnapPea. p-data. SnapPea. - PowerPoint PPT Presentation
Citation preview
Integration of SnapPea, K2K and bTd using JAVA interface
by M. Ochiai
Topology and Computer
Akita University
September 5~7, 2007
p-data
complete p-data
KLPProjection : klp
A main function in SnapPeatriangulate_link_complement(klp)
manifold
Configuration data of SnapPea
manifolda pointer variable in SnapPea’s kernelto compute invariants such as volume
SnapPea
K2K
Data exchanges of SnapPea and K2KInput a knot by mouse-tracking
Integration of SnapPea, K2K, and bTd
static {
System.loadLibrary("snappea.dll");
}
public native String send(String data , int number , double m , double l, int n);
In snappea.dll :
void MakeKLPCrossing(int n, int n2, int com, int nump[], PDATA pdata[], struct KLPProjection *kp)
A main interface function of SnapPea and K2K
void knotinput(){
try {
Process process = Runtime.getRuntime().exec("KnotInput.exe");
Reader in = new InputStreamReader(process.getInputStream());
int c = -1;
while ((c = in.read()) != -1) {
System.out.print((char) c);
}
in.close();
} catch (Exception ex) { ex.printStackTrace(); }
str = "pdata.prd"; FileCopy(str, str_last);
play();
}
A main interface of JAVA and SnapPea, K2K (I)
void jonespolynomial(){
try {
Process process = Runtime.getRuntime().exec("jonespol "+str);
Reader in = new InputStreamReader(process.getInputStream());
int c = -1;
while ((c = in.read()) != -1) {
System.out.print((char) c);
}
in.close();
} catch (Exception ex) { ex.printStackTrace(); }
...
In jonespol.exe
void main(int argc, char *argv[])
A main interface of JAVA and K2K (II)
• Windows XP, Vista :
NetBeans + Microsoft Visual C++ 2005 + OpenGL
• Mac OSX , Linux :
Xcode2.0 + OpenGL + ?
Programming environment of SnapPea and K2K (I)
• SnapPea on C language program (GUI : QuickDraw)
• K2K on C language and Mathematica program with MathLink
In this research, JAVA is the main programming back ground.
How to implement SnapPea and K2K using JAVA interface.
(1)Library call ー> dynamic like library (or shared library)
easy data exchanges
(1)Exe call ー> executable load module
poor data exchanges (such as, main(argc,argv))
Programming environment of SnapPea and K2K (II)
• “Two different mutant knots have the same volume” (The Knot Book, C.Adams)
(1) Input a target knot K(2) to compute volumes V and P(K;x,y) of K
(3) Input a knot K’ from a file with many p-data (from KNOT table, K2K includes all knots with up to 15 crossings, F. Kako is making a alternating knot table up to 18 ー> 23)
(4) to compute volumes V’ of K’(5) If V’=V, then to compute P(K’;x,y)(6) If P(K’;x,y)=P(K;x,y), then output K’ as a “mutant” knot
of K
How to find mutant knots ?
Two different mutant knots
• Knots are determined by their complements, C.Gordon and J.Luecke, J.Amer.Math.Soc. 2, 371-415
• Property P conjecture
(1) Input a knot K from a file with many p-data
(2) Let M be a 3-manifold obtained by (1,1) surgry
(3) To compute the fundamental group G of M
(4) If G is trivial, then K is the trivial knot. Otherwise, K is non-trivial.
“Find a non-trivial knot with the trivial Jones polynomial.”
How to make such a effective p-data as in (1)
How to recognize the triviality of knots ?
How to recognize the triviality of knots ?
How to recognize the triviality of knots ?
A trivial knot without waves with 67 crossing points
134 1134
-88 -21 -108 -41 -126 -59 -114 -47 26 93 -68 -1 16 83 62 129 54 121 -76 -9 -72 -5 -94 -27 134 67 38 105 34 101 -78 -11 130 132 -89 -22 -109 -42 -127 -60 -115 -48 25 92 -69 -2 15 82 61 128 53 120 -77 -10 -73 -6 -95 -28 133 66 37 104 33 100 -79 -12 64
A trivial knot without waves with 45 crossing points
90 190 -30 -13 45 18 -20 61 -48 78 31 -43 -40 -59 -75 -66 -3 64 -37 79 -63 6 -17 -15 -39 85 74 24 69 -88 -23 -21 -47 12 56 89 -25 52 -83 -27 35 10 49 -73 77 28 -57