\contentsline {chapter}{\numberline {1}Overview}{4}
\contentsline {section}{\numberline {1.1}Introduction}{4}
\contentsline {section}{\numberline {1.2}Design notes}{4}
\contentsline {section}{\numberline {1.3}Structure of {\sf LiDIA}}{5}
\contentsline {section}{\numberline {1.4}Future developments}{6}
\contentsline {subsection}{\numberline {1.4.1}In work}{6}
\contentsline {section}{\numberline {1.5}{\sf LiDIA}\ Group}{6}
\contentsline {subsection}{\numberline {1.5.1}Current members}{6}
\contentsline {subsection}{\numberline {1.5.2}Former members}{7}
\contentsline {section}{\numberline {1.6}Acknowledgements}{7}
\contentsline {chapter}{\numberline {2}Installing {{\sf LiDIA}}}{8}
\contentsline {section}{\numberline {2.1}Addresses of the {\sf LiDIA}-group}{8}
\contentsline {section}{\numberline {2.2}Unpacking}{8}
\contentsline {subsection}{\numberline {2.2.1}Unpacking procedure}{9}
\contentsline {section}{\numberline {2.3}Configuring {{\sf LiDIA}}}{10}
\contentsline {subsection}{\numberline {2.3.1}Creating a new configuration file}{10}
\contentsline {subsection}{\numberline {2.3.2}Specifying the compiler used by the configure script}{11}
\contentsline {subsection}{\numberline {2.3.3}Configuration variables}{12}
\contentsline {subsection}{\numberline {2.3.4}Editing a configuration file}{13}
\contentsline {section}{\numberline {2.4}Compiling {{\sf LiDIA}}}{14}
\contentsline {section}{\numberline {2.5}Installing {{\sf LiDIA}}}{15}
\contentsline {chapter}{\numberline {3}How to use the {\sf LiDIA}\ library}{16}
\contentsline {chapter}{\numberline {4}Changes}{18}
\contentsline {subsubsection}{class bigint}{18}
\contentsline {subsubsection}{class base\_vector\unhbox \voidb@x \hbox {$<$T$>$}}{18}
\contentsline {subsubsection}{class bigfloat/bigint\_lattice\_gensys/basis}{18}
\contentsline {subsubsection}{Handling of algebraic\_numbers}{18}
\contentsline {chapter}{\numberline {5}Template instantiation and trouble shooting}{20}
\contentsline {section}{\numberline {5.1}Template instantiation}{20}
\contentsline {subsection}{\numberline {5.1.1}Using GNU's g++}{20}
\contentsline {subsection}{\numberline {5.1.2}Using AT\&T CC, HP CC, MIPS CC}{21}
\contentsline {subsection}{\numberline {5.1.3}Using GNU g++ with repo patch}{21}
\contentsline {section}{\numberline {5.2}Problems when compiling {\sf LiDIA}}{22}
\contentsline {subsection}{\numberline {5.2.1}SGI, Irix 5.2}{22}
\contentsline {subsection}{\numberline {5.2.2}HP UX, HP CC}{22}
\contentsline {chapter}{\numberline {6}Description of the Classes}{23}
\contentsline {section}{\numberline {6.1}bigint}{23}
\contentsline {section}{\numberline {6.2}bigmod}{34}
\contentsline {section}{\numberline {6.3}multi\_bigmod}{42}
\contentsline {section}{\numberline {6.4}bigrational}{52}
\contentsline {section}{\numberline {6.5}xdouble}{59}
\contentsline {section}{\numberline {6.6}bigfloat}{64}
\contentsline {section}{\numberline {6.7}bigfloat\_int}{77}
\contentsline {section}{\numberline {6.8}bigcomplex}{87}
\contentsline {section}{\numberline {6.9}numbertheoretic functions}{95}
\contentsline {section}{\numberline {6.10}crt\_table/crt}{98}
\contentsline {section}{\numberline {6.11}hash\_table}{108}
\contentsline {section}{\numberline {6.12}indexed\_hash\_table}{112}
\contentsline {section}{\numberline {6.13}base\_vector}{117}
\contentsline {section}{\numberline {6.14}math\_vector}{124}
\contentsline {section}{\numberline {6.15}sort\_vector}{129}
\contentsline {section}{\numberline {6.16}file\_vector}{136}
\contentsline {section}{\numberline {6.17}lidia\_vector}{140}
\contentsline {section}{\numberline {6.18}base\_matrix}{141}
\contentsline {section}{\numberline {6.19}math\_matrix}{157}
\contentsline {section}{\numberline {6.20}bigint\_matrix}{165}
\contentsline {section}{\numberline {6.21}bigmod\_matrix}{183}
\contentsline {section}{\numberline {6.22}bigint\_lattice}{193}
\contentsline {section}{\numberline {6.23}bigfloat\_lattice}{210}
\contentsline {section}{\numberline {6.24}matrix\_GL2Z}{228}
\contentsline {section}{\numberline {6.25}quadratic\_form}{231}
\contentsline {section}{\numberline {6.26}quadratic\_order}{240}
\contentsline {section}{\numberline {6.27}qi\_class}{249}
\contentsline {section}{\numberline {6.28}qi\_class\_real}{259}
\contentsline {section}{\numberline {6.29}quadratic\_ideal}{266}
\contentsline {section}{\numberline {6.30}number\_field}{275}
\contentsline {section}{\numberline {6.31}order}{280}
\contentsline {section}{\numberline {6.32}alg\_number}{285}
\contentsline {section}{\numberline {6.33}module}{292}
\contentsline {section}{\numberline {6.34}gf2n}{300}
\contentsline {section}{\numberline {6.35}galois\_field}{306}
\contentsline {section}{\numberline {6.36}gf\_p\_base}{309}
\contentsline {section}{\numberline {6.37}gf\_p\_element}{312}
\contentsline {section}{\numberline {6.38}polynomial}{318}
\contentsline {section}{\numberline {6.39}polynomial over bigint, bigrational, bigfloat, bigcomplex}{324}
\contentsline {section}{\numberline {6.40}polynomial over gf\_p\_element}{329}
\contentsline {section}{\numberline {6.41}Fp\_polynomial}{334}
\contentsline {section}{\numberline {6.42}poly\_modulus}{345}
\contentsline {section}{\numberline {6.43}gf\_poly\_modulus}{350}
\contentsline {section}{\numberline {6.44}rational\_factorization}{353}
\contentsline {section}{\numberline {6.45}single\_factor}{361}
\contentsline {section}{\numberline {6.46}factorization}{365}
\contentsline {section}{\numberline {6.47}factorization {\unhbox \voidb@x \hbox {$<$}}Fp\_polynomial{\unhbox \voidb@x \hbox {$>$}}}{372}
\contentsline {section}{\numberline {6.48}factorization {\unhbox \voidb@x \hbox {$<$}}gf\_polynomial{\unhbox \voidb@x \hbox {$>$}}}{376}
\contentsline {section}{\numberline {6.49}power\_series}{379}
\contentsline {section}{\numberline {6.50}timer}{389}
\contentsline {section}{\numberline {6.51}gmm}{392}
\contentsline {section}{\numberline {6.52}system\_handlers}{395}
\contentsline {chapter}{\bf 5\ \ Copyright}{398}
\contentsline {chapter}{\bf 6\ \ Bibliography}{398}
\contentsline {chapter}{\bf 7\ \ Index}{404}
