GiANT is a graphical interface for working with number fields
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

GiANT: inspector & tower of fields


GiANT (Graphical Algebraic Number Theory) is a graphical interface for working with number fields. It is written in Java and runs on top of the computer algebra system KASH 2.5. In its present state it can be used for teaching and presentations.


  1. Get Java. GiANT requires Java 1.4 or higher.
  2. Install KASH 2.5
  3. Download (or compile from source) GiANT.jar
  4. Place a copy of the giant.kash file in the same directory as the kash executable (KASH_2.5 by default).
  5. To launch GiANT, execute java -jar GiANT.jar /PATH/kashdir. (/PATH/kashdir is the path to the parent directory of the kash executable.)


Algorithms for dedicated computer algebra systems have developed rapidly. Nevertheless, user interfaces for these feature-rich systems have traditionally focused on command-line interaction. GiANT is a graphical user interface for computer algebra. It dynamically creates interactive diagrams, typesets formulas, and supports drag-and-drop manipulation of elements and polynomials. The result is a visual workspace designed to support mathematical intuition and reduce cognitive load versus text-only algebra systems.

Screenshots, video

Paper, history

If you use GiANT for research or development, please cite the paper: [GiANT: Graphical Algebraic Number Theory] (, Aneesh Karve and Sebastian Pauli, Journal of Number Theory--Bordeaux (JTNB), Tome 18, no. 3 (2006), p. 721-727.

GiANT was introduced at the MP60 Number Theory Conference, Technical University of Berlin, 10 June 2005. GiANT was featured at Algebra and Computation 2005, Tokyo Metropolitan University, 16 November 2005.


GiANT runs on Java 1.4 or higher. It has been tested on Mac OS X and some pure UNIX flavors, but not so much on Windows. GiANT requires a working installation of KASH 2.5, which is free.

Future research & development

  • Bi-directional integration of GUI elements and text shell elements. (Currently, elements created in the GUI are only available in the GUI, and vice versa.)
  • See the Conclusion section of the GiANT paper for more ideas


Special thanks to the German Academic Exchange (DAAD) and the KANT Group at TU-Berlin for their support during the creation of GiANT.


GiANT was created by Aneesh Karve and co-designed by Sebastian Pauli.