Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
Unsafe features
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2005-11-29 (18:46)
From: Thomas Gazagnaire <thomas.gazagnaire@i...>
Subject: Integral solutions of rational linear equations

in my one of my Ocaml programs, I need to find all integers solutions of 
a rational equation systems. This algo uses Gauss reduction and Hermite 
normal form, and need to know if a rational is an integer or not (ie. I 
don't want to use numerical approximation : (1/3) * 3 is an integer but 
0,333333*3 we don't know). I didn't find any integer algebra package for 
ocaml, so I tried to implement Gauss elimination (easy) and Hermite 
normal form (more difficult...). But I didn't implement optimized 
version of these algorithms...

So my question is : do you know if exists a native ocaml module or an 
interface with a C library which is able to do integer/rational matrix 
manipulation (essentialy the Hermite normal form) in an efficient way ?