- 20th September 2021. Updated legendre.html to reflect the algorithms in the paper
*On solving a binary quadratic diophantine equation*, K.R. Matthews, J.P. Robertson, Rocky Mountain Journal of Mathematics, 51(4): 1369-1385 (August 2021). - 4th August 2021. Added note describing the algorithms in stoltvialmm.html and binaryformsfs.html.
- 31st July 2021. In binaryformsfs.html, I realised that the ((α
_{i}– b β_{i})/2a, β_{i}) are the fundamental solutions - so no need to examine their conjugates. - 4th June 2021. Added two mappings of Brian Gurbaxani.
- 23rd March 2021. Added missing partial quotients from surd.html.
- 19th March 2021. Added solving the congruence ax
^{2}+ bx + c ≡ 0 (mod n). - 2nd January 2021. Added logabd.html (finding the continued fraction of log
_{b}a/d). - 16th December 2020. Added a statement about the cycles of a generalization of mapping 4 of Pruthviraj Hahari, where (k
^{2}- 1)x is replaced by k^{t-2}(k^{2}- 1)x, t ≥ 2. - 13th December 2020. Added a generalization of the first mapping of Pruthviraj Hajari.
- 12th December 2020. Added a generalization of the second mapping of Pruthviraj Hajari.
- 11th December 2020. Added a second mapping of Pruthviraj Hajari.
- 10th December 2020. Added a mapping of Pruthviraj Hajari.
- 8th August 2019. Programs log3.html and log4.html are now on the one page logab.html.
- 11th June 2019. Fixed a global variable problem in axbmodm.html.
- 12th December 2018. log4.html fails to live up to expectations when (a,b,m,n)=(991,2,146,148).
- 19th November 2018. Replaced log3.html by log4.html. We amazingly seem to get output that consists of correct partial quotients; but this awaits proof.
- 15th November 2018. Replaced log1.html by log3.html. We have simplified an earlier algorihtm and amazingly seem to get output that consists of correct partial quotients; but this awaits proof.
- 17th July 2018. Added barina8.html.
- 23rd April 2018. There have been some issues with log.html.
- 3rd April 2018. Replaced log.html by log1.html, the only change being that the parameter c is now taken to be b
^{r}. This seems to give a more reliable output for the partial quotients. - 14th December 2017. Fixed an error in the algorithm for finding SFSs in patzstolt.html.
- 12th December 2017. In surd.html, we now restrict the v in (u + t√d)/v to be positive.
- 14th November 2017. Improved the output of surd.html.
- 1st October 2017. Fixed a printing error in patz.html.
- 7th August 2017. Added a table of the first 250,000 partial quotients of the continued fraction expansion of e
^{3}to davison.html. - 27th July 2017. Added Solving ax
^{2}+ bxy + cy^{2}= n, where d = b^{2}– 4ac > 0, d non-square, gcd(a,b,c)=1, where |n| < (√d)/2. - 18th July 2017. Removed the cycle finding program for generalized 3x+1 mappings. Instead, please use the CALC version, as it gives the user more freedom to experiment with parameters.
- 17th July 2017. Added a 6 branch mapping.
- 29th May 2017. Added markov-forms-cycle.html.
- 15th May 2017. Added pell4.html.
- 10th April 2017. Program surd.html now prints the equation Q
_{0}A_{n-1}^{2}- 2P_{0}A_{n-1}B_{n-1}+ {(P_{0}^{2}-D)/Q_{0}} B_{n-1}^{2}= (-1)^{n}Q_{n}. - 14th March 2017, Restored access to solving the general quadratic diophantine equation.
- 10th March 2017. Search range upperbound in aaa.html is now restricted to 1000000.
- 16th February 2017. Thanks to help from Wilberd van der Kallen, the LLLHNF pseudocode has been updated and now produces the correct HNF of a 6x5 matrix communicated by Benjamin Hildprecht.
- 7th February 2017. The LLL-based algorithm of Havas-Majewski and Matthews, for finding the Hermite normal form of an integer matrix, sometimes delivers a matrix which is not quite in Hermite normal form. This also is the case with the CALC version and is currently being investigated.
- 4th February 2017, Removed access to solving the general quadratic diophantine equation, as a bug is causing access problems to my site.
- 1st January 2017. Removed absolute values from the definition of A
_{i+1}in reduce.html, as well as all references to s_{i}. - 29th July 2016. Fixed a coding error in partition.html.
- 21st July 2016. Changed old version of generalized Lu Pei mapping to Lu_Pei0.html.
- 18th July 2016. Fixed some errors in solving the general quadratic diophantine equation.
- 22nd June 2016. Added Calculating the product of two quadratic irrationals.
- 7th June 2016. Fixed a similar error to the previous one in patzstolt.html, this time in the function patz().
- 6th June 2016. Fixed an error in patzstolt.html which had caused faulty output when using the nonverbose option.
- 29th May 2016. Added Finding the least prime factor of an integer.
- 23rd May 2016. Added Conway's cycling sequence.
- 8th May 2016. Treated the cases d=5 and 13 in a better way in patzstolt.html.
- 15th April 2016. Fixed a minor sign error in the output of patzstolt.html.
- 24th March 2016. Changed it back again to its former state!
- 23rd March 2016. Changed the way I deal with D=13 in patzstolt.html.
- 22nd February 2016. I fixed another bug in patzstolt.html which showed up when D =4k+2.
- 19th February 2016. Fixed a bug in patzstolt.html
- 14th February 2016. Added patzstolt.html, which finds the Stolt fundamental solutions of x
^{2}-dy^{2}= 4n, using ideas of John Robertson. - 8th February 2016. Improved the output of patz.html.
- 13th January 2016. Fixed yet another small but significant error in patz_.php that caused havoc in binary.html and binarygen.html with the example 59x
^{2}- 16xy + y^{2}= -4 and 59x^{2}- 16xy + y^{2}= -1. - 29th December 2015. Fixed a bug in binary.html.
- 5th November 2015. Barry Smith found another error in Calculating the order of a binary indefinite quadratic form in the class group. This has now been fixed.
- 4th November 2015. Barry Smith found an error in Calculating the order of a binary indefinite quadratic form in the class group. The program had been returning h(d)! This has now been fixed.
- 15th October 2015. Fixed a bug in stolt_fundamental.html.
- 8th September 2015. Tightened up the code for finding the Stolt fundamental solutions. This had a flow-on effect for aaa.html.
- 7th September 2015. Corrected another error in aaa.html!
- 7th September 2015. Corrected error in the output of aaa.html, where in the case of even discriminant, I had U
^{2}– Dv^{2}= 1, instead of U^{2}– (D/4)v^{2}= 1. - 21st August 2015. I now list all Stolt-fundamental solutions in stolt.html, not just the positive ones.
- 13th June 2015. Added Solving a system of linear congruences with possibly differing moduli.
- 10th June 2015. Added Solving a system of linear diophantine congruences AX ≡ B (mod m) using the Smith normal form of an integer matrix.
- 25th May 2015. Added Expressing a prime 5n ± 1 in the form x
^{2}+ xy – y^{2}, with x > 0, y > 0 using an algorithm of Christina Doran, Shen Lu and Barry R. Smith. - 21st May 2015. Added Finding the modular inverse of m modulo n using an algorithm of Christina Doran, Shen Lu and Barry R. Smith.
- 18th May 2015. Corrected an error in the output of binarygen.html, namely replaced F/2 by F and G/2 by G in two places.
- 17th May 2015. Corrected radicand in the output when solving equations such as x
^{2}– 7y^{2}= 109. - 15th May 2015. Improved the output for solving the general quadratic diophantine equation by dividing through by the gcd of four coefficients on the first two lines of each solution.
- 5th May 2015. Improved the description of the algorithm behind solving the general quadratic diophantine equation.
- 3rd May 2015. Improved the output display of the general quadratic diophantine equation and improved the coding layout.
- 25th April 2015. The general quadratic diophantine equation is now solvable when gcd(a,b,c) > 1 and d = b
^{2}– 4ac > 0, d non-square. - 18th April 2015. Added solving the general quadratic diophantine equation.
- 7th April 2015. Added the John Robertson method for solving ax
^{2}+ bxy + cy^{2}+ dx + ey + f= 0, where d = b^{2}– 4ac > 0, d non-square. - 31st March 2015. Fixed an error in binarygen.html, when D=5 and an > 0.
- 24th March 2015. Fixed an error in the stolt program which had resulted in the wrong answer if N < 0 and v = √(4A|N|/D).
- 24th March 2015. Improved binarygen.html. It now gives formulae for the solutions in each class, instead of just a representative. I got the idea from Legendre's book
*Theorie des nombres*. - 15th March 2015. posrep.html now finds all solutions, not just primitive ones.
- 15th March 2015. Improved legendreneg.html.
- 15th March 2015. Improved ssw.html.
- 13th March 2015. I tightened up the last two changes, so as to deal with certain special cases.
- 12th March 2015. Added solving ax
^{2}+ bxy + cy^{2}+ dx + ey + f = 0, where d = b^{2}– 4ac < 0, a nonzero. - 8th March 2015. Added solving ax
^{2}+ bxy + cy^{2}+ dx + ey + f = 0, where d = b^{2}– 4ac > 0, d non-square and a is nonzero. - 7th March 2015. We now get all fundamental solutions (primitive and imprimitive) in the LMM algorithm.
- 7th March 2015. Improved the printing of the fundamental solutions in LMM algorithm.
- 21st February 2015. Added Wildberger's algorithm for solving Pell's equation.
- 2nd February 2015. Added lprimrootneg.html, lprimroot_generator.htm and lprimrootneg_generator.htm.
- 15th January 2015. Fixed an error in the Stolt fundamental solutions program.
- 13th January 2015. Fixed a double counting error in the Stolt fundamental solutions program.
- 17th December 2014. Improved the Stolt fundamental solutions program.
- 23rd November 2014. Added a second methof for testing Dujella's unicity conjecture.
- 22nd November 2014. Corrected a flaw in the code for Stolt fundamental solutions program.
- 16th November 2014. Improved the code for Stolt fundamental solutions program.
- 22nd October 2014. Added Solving the diophantine equation ax
^{2}+bxy+cy^{2}=n, a > 0, n nonzero, b^{2}-4ac > 0, gcd(a,b,c)=1, using the upper bounds of Bengt Stolt. - 28th August 2014. Added upper bound for x in nagell_fundamental.html.
- 27th August 2014. Fixed an error in a variable name in Hermite-Serret program.
- 24th August 2014. Added Solving the diophantine equation ax
^{2}+bxy+cy^{2}=n, b^{2}-4ac < 0, gcd(a,b,c)=1, a > 0, n nonzero, using a continued fraction algorithm of Lagrange 1770. - 24th July 2014. Corrected the printing of an error message and also improved the quality of the verbose mode for Solving a positive definite binary quadratic form diophantine equation.
- 15th July 2014. Added Solving the diophantine equation ax
^{2}+bxy+cy^{2}=n, b^{2}-4ac < 0, gcd(a,b,c)=1, a > 0, n nonzero, using a substitution of Lagrange 1770. - 21st May 2014. Added Testing Dujella's unicity conjecture.
- 17th May 2014. Increased the number a from 3 to 5 in brent($n).
- 16th May 2014. Increased the number of primes used in Miller's test from 5 to 16.
- 28th March 2014. Added prime constellations.
- 26th February 2014. Added list of irregular primes p < 10000.
- 16th December 2013. Added patzpos.html.
- 4th December 2013. Added a second function to markov.html.
- 15th November 2013. Added listing of Markoff numbers in numerical order in markoff_triples.html.
- 14th November 2013. Added markoff_triples.html.
- 16th September 2013. Improved the description of rank.html.
- 8th September 2013. Further debugging and improving of rank.html.
- 5th September 2013. Added rank.html.
- 21st July 2013. Added
*Note on the Markoff numbers conjecture*to stolt.html - 19th July 2013. Added stolt.html.
- 17th July 2013. Removed a pair of minus signs in the output of the basis for non-negative solutions.
- 16th July 2013. Improved the coding of Frattini's algorithm in nagell_fundamental.html. Also added explanatory note.
- 14th July 2013. Fixed an error in the coding of Frattini's algorithm.
- 13th July 2013. Added Frattini's algorithm to nagell_fundamental.html.
- 28th June 2013. Fixed a mathematical error which led to the omission in nagell_fundamental.html of the possibility (0,y) as a fundamental solution of x
^{2}-Dy^{2}=N when N < 0. - 30th April 2013. Added calculating the minimal multipliers for m consecutive Fibonacci numbers.
- 4th February 2013. Changed the printing of ω in surd_construction.html so that it now is in standard form. Also created cfrac_.php which contains pn($a,$n), qn($a,$n), printcfrac($d,$t,$u,$v) and standardform($d,$t,$u,$v).
- 30th January 2013. Increased the upper limits for D and |N| in nagell_fundamental.
- 5th January 2013. Fixed a logical error in negative_pell.html and removed the dependence on variable t.
- 2nd January 2013. Added ternary.html.
- 30th December 2012. Added calculating the polynomial partial quotients for the continued fraction arising from an exceptional solution (k(t),x(t),y(t)) to Dujella's diophantine equation x
^{2}- (k^{2}+1)y^{2}= k^{2}. - 22nd December 2012. Added calculating a continued fraction arising from an exceptional solution to Dujella's diophantine equation x
^{2}- (k^{2}+1)y^{2}= k^{2}. - 21st December 2012. Added a restriction in nagell_fundamental, whereby the upper bound shall not exceed 10
^{6}. - 14th December 2012. Added Nagell's method of solving x
^{2}-Dy^{2}=N. - 28th September 2012. Added an extension of the Hermite_Serret algorithm.
- 8th May 2012. Added solving ax
^{2}-by^{2}=±1 - 19th March 2012. Noticed a bug in ./patz.html. I had used abs($n) instead of bcabs($n) in patz_.php.
- 9th January 2012. Added finding the divisors of a positive integer.
- 22nd November 2011. Fixed an error in computing the period of the least integer continued fraction expansion of a quadratic surd.
- 21st November 2011. Program for reducing an indefinite binary quadratic form using an algorithm of Don Zagier.
- 18th November 2011. Program for finding the least integer continued fraction expansion of a quadratic surd.
- 3rd November 2011. Program for solving AX=B in integers, now finds the shortest solutions.
- 2nd November 2011. Added finding the closest lattice points to a given point.
- 27th October 2011. Fixed a logical error in my OCF program that was pointed out to me by John Robertson.
- 26th October 2011. Continued fixing the previous error!
- 25th October 2011. Fixed a small but important error in axb.html, which was copied from the CALC version.
- 24th October 2011. Changed the logic of lllgcd. After initially finding a short multiplier using LLLGCD, it repeatedly replaces this multiplier by a shorter one until such a one does not exists and then exits with a list of all shortest multipliers.
- 18th October 2011. Updated lllgcd so that it now gets all shortest multiplier vectors for the extended gcd problem.
- 11th October 2011. Added finding the shortest vector in a lattice.
- 6th October 2011. Fixed inclusion file redundancies in euclid.html and ordercomposite.html.
- 28th September 2011. Updated LLL to allow the user to enter an α satisfying 1/4 < α ≤ 1.
- 27th September 2011. Updated MLLL to allow the user to enter an α satisfying 1/4 < α ≤ 1.
- 24th September 2011. Finding the Smith normal form of an integer matrix.
- 19th September 2011. Finding a LLL reduced basis for an integer matrix whose rows may be LD.
- 14th September 2011. Finding a LLL reduced basis for an integer matrix whose rows are LI.
- 12th September 2011. Finding a small solution of a system of linear diophantine equations AX=b using the Hermite normal form of an integer matrix and the Havas-Majewski-Matthews LLL-based algorithm.
- 11th September 2011. Replaced the initial version LLL based Hermite normal form algorithm by one with more input flexibility and which allows increased dimensions.
- 10th September 2011. Added the LLL based Hermite normal form algorithm.
- 5th September 2011. Added the case of finding the shortest multipliers for the extended gcd problem for four positive integers.
- 3rd September 2011. Added the case of finding the shortest multipliers for the extended gcd problem for three positive integers.
- 2nd September 2011. Added finding small multipliers for the extended gcd problem.
- 26th August 2011. Added Tomás Oliveira e Silva's mappings T
_{5}and T_{7}. - 22nd August 2011. Added Geoffrey Caverney's function.
- 10th August 2011. Added extra stuff on F
_{3}to the Benoit Cloitre examples page. - 8th August 2011. Added option for running F
_{29}on the Benoit Cloitre examples page. - 3rd August 2011. Added option for running F
_{3}on the Benoit Cloitre examples page. - 23rd July 2011. Added three mappings of Benoit Cloitre.
- 22nd July 2011. Added class number tables generated by the previous two programs.
- 22nd July 2011. Calculating the class number h(d) for binary quadratic forms of negative discriminant d now has alternatives for (i) fundamental, (ii) odd fundamental, (iii) even fundamental discriminants, as well as all discriminants.
- 21st July 2011. Calculating the class number h(d) for binary quadratic forms of positive discriminant d now has alternatives for (i) fundamental, (ii) odd fundamental, (iii) even fundamental discriminants, as well as all discriminants.
- 20th July 2011. Added Finding the nth power under composition of indefinite binary quadratic forms of positive discriminant.
- 20th July 2011. Added Finding the order of under composition of a binary indefinite quadratic forms of positive discriminant in the class group.
- 19th July 2011. Added composition of two indefinite binary quadratic forms of the same discriminant.
- 19th July 2011. Reducing a form of positive discriminant now has a nonverbose option.
- 18th July 2011. 11am Aust EST. I have reorganised the position of library.php amongst the various php files and this may have rendered some programs temporarily unworkable!
- 18th July 2011. Added order under composition of a positive definite quadratic form of negative discriminant in the class group.
- 15th July 2011. Added n-th power under composition of a binary positive definite quadratic form.
- 14th July 2011. Added composition of two binary positive definite quadratic forms of the same discriminant.
- 23rd June 2011. Added the partition number.
- 15th June 2011. Added the Kronecker symbol.
- 9th June 2011. Added Bernoulli numbers.
- 8th June 2011. Added Tangent numbers.
- 17th March 2011. Rewrote and simplifed code behind 2-adic square root.
- 15th March 2011. Rewrote and simplifed code behind p-adic square root, after a bug notification by Milton Minervino.
- 10th January 2011. Added Lu Pei's three-branched mapping conjecture.
- 28th December 2010. Added another interesting generalisation of the 3x-1 mapping arising from an example of Lu Pei (November 1997).
- 27th December 2010. Added an interesting generalisation of the 3x+1 mapping due to Walter Carnielli.
- 12th November 2010. Simplified the optimal cfrac program.
- 3rd November 2010. Added calculating the optimal continued fraction of √d for a range of consecutive d.
- 3rd November 2010. Added option of merely printing the continued fraction in optimal cfrac program.
- 5th September 2010. Added feature of finding all solutions y of φ(y) divides n to carmichael.html.
- 4th September 2010. Improved the logic of carmichael program - q[prime_count] now equals 0.
- 31st August 2010. Added tree diagram to carmichael.html.
- 26th August 2010. Added a program for solving φ(x)=n, where φ(x) is Euler's totient function.
- 22nd July 2010. Added Testing Mridul Sen's prime conjecture.
- 22nd July 2010. Added Generating Lucas pseudoprimes.
- 4th July 2010. Improved the code for
`initial_matrix($m,$n,$q)`by using a suggestion of Alan Offer that I use the recurrence relations in his note. - 30th June 2010. Got rid of the zero partial quotient in Finding the regular continued fraction of a rational multiple m/n of e
^{1/q}. - 24th June 2010. Added Finding the regular continued fraction of a rational multiple m/n of e
^{1/q}. - 24th June 2010. Added Another factorization of a 2x2 non-singular non-negative matrix.
- 18th June 2010. Added testing a quadratic surd for being NSCF-reduced. This is a different and more elegant test than a previous test, but does not produce the reduced NSCF predecessor.
- 28th May 2010. Replaced old nearest square continued fraction expansion by one which detects a reduced complete quotient using the Matthews-Robertson criterion.
- 19th May 2010. Added Example 8 of G. Venturini.
- 14th April 2010. Added Frequency (mod m) program for generalized 3x+1 mappings.
- 3rd January 2010. Added Fibonacci and Lucas numbers.
- 15th December 2009. Added testing a quadratic surd for being NSCF-reduced.
- 15th December 2009. Added testing a quadratic surd for being RCF-reduced.
- 17th November 2009. Replaced OCF program by faster version.
- 24th June 2009. Added Collatz type function of Mridul Sen.
- 29th March 2009. Added producing a quadratic surd equivalent to a given one.
- 17th March 2009. Added finding the positive and negative representations of a quadratic surd, as far as the end of the first period.
- 5th February 2009. Added listing the nearest square continued fraction of √d over a range of consecutive d.
- 5th February 2009. Added listing the nearest integer continued fraction of √d over a range of consecutive d.
- 5th February 2009. Added listing the simple continued fractionof √d over a range of consecutive d.
- 8th August 2008. Added an algorithm for solving
x
^{2}-xy-(D-1)/4y^{2}=±1 using the nearest square continued fraction of (1+√D)/2, D≡ 1(mod 4). - 7th August 2008. Added an algorithm for solving Pell's equation using the nearest square continued fraction algorithm (NSCF) and midpoint criteria.
- 7th August 2008. Added an algorithm for solving Pell's equation using the nearest integer continued fraction algorithm from Perron's book (NICF-P) and midpoint criteria.
- 28th April 2008. Added an algorithm for converting the RCF, up to the end of the first period, into the NICF (removed 18th August 2008).
- 18th April 2008. Added Selenius' algorithm for converting the RCF up to the end of the first period to the NSCF (removed 18th August 2008).
- 4th April 2008. Added the optimal continued fraction algorithm for rationals.
- 2nd April 2008. Added the choice of not printing the b
_{k}and u_{k}/ v_{k}in the optimal continued fraction algorithm. - 14th February 2008. Added the optimal continued fraction algorithm of Wieb Bosma.
- 2nd November 2007. Added nearest square continued fraction expansion of a quadratic rational.
- 2nd November 2007. Added nearest square Pell equation algorithm.
- 19th October 2007. Added nearest integer continued fraction expansion of a quadratic rational
- 18th October 2007. Added a second NICF expansion of m/n to nearest integer Euclidean algorithm.
- 11th October 2007. Added nearest integer Pell equation algorithm.
- 5th October 2007. Added nearest integer Euclidean algorithm.
- 13th February 2007. Added computing the period of the continued fraction expansion of √d.
- 9th February 2007. Added decimal to rational program.
- 7th February 2007. Added calculating the power of a quadratic irrational.
- 7th December 2006. Replaced continued fraction-based reduction algorithm for indefinite binary quadratic forms by Henri Cohen's reduction algorithm.
- 5th December 2006. Cleared up some remaining confusion regarding the reduction algorithm for indefinite binary quadratic forms. We now expand 1/τ and consequently make changes F
_{i}= (-1)^{i}t/f_{i}and the unimodular transformation becomes x = Y, y = -X + (-1)^{i}tg_{i}Y. - Cleared up some underlying confusion regarding the reduction algorithm for indefinite binary quadratic forms. We now find a unimodular matrix that transforms (a,b,c) to reduced form.
- 29th September 2006. Added testing the solubility of the negative Pell equation.
- 29th September 2006. Added the Grytczuk, Luca, Wojtowicz construction of non-square d such that the continued fraction of √d has odd length period, testing over ranges for u and v.
- 19th September 2006. Added finding the gcd of n positive integers.
- 19th September 2006. Added Calculating the quadratic irrationality whose simple continued fraction is given.
- 6th September 2006. Added the constructive version of the Aubry-Thue theorem.
- 28th August 2006. Added the Grytczuk, Luca, Wojtowicz construction of non-square d such that the continued fraction of √d has odd length period.
- 16th August 2006. Added σ
_{k}(n) and λ(n). - 20th July 2006. Added finding the continued fraction of the unique positive root of a trinomial ax
^{n}+bx^{n-1}+c. - 20th July 2006. Added finding the continued fraction of the unique positive root of a trinomial ax
^{n}+bx+c. - 5th June 2006. Added perfect-power testing.
- 2nd June 2006. Added finding the simple continued fraction of the n-th root of a positive rational.
- 27th May 2006. Notice that the following BCMATH program shows that one has to use the bccomp() function in conditionals:
<?php $test1="100000000000001415402032694799700273500898"; $test2="100000000000001421659378396209449729633403"; if($test1 > $test2){ echo "$test1 > $test2"; } if($test1 == $test2){ echo "$test1 = $test2"; } if($test1 < $test2){ echo "$test1 < $test2"; } ?>

The program produces output

100000000000001415402032694799700273500898 = 100000000000001421659378396209449729633403

I will now have to start the tedious task of changing back to using bccomp(). - 26th May 2006. Added Representing an integer by a positive definite binary quadratic form.
- 20th May 2006. Added the option of printing the convergents in Calculating the simple continued fraction of a quadratic irrational.
- 3rd May 2006. Noticed that the Fox-Landi program is exiting prematurely and doesn't declare state 3 to be transient for the matrix.
1 0 0 0 1 0 1 1 1

The bug was also present in Generalized 3x+1 functions and Markov matrices. - 29th April 2006. Added finding the cyclic classes and cyclic form to the periodic matrix program.
- 10th March 2006. Fixed the error in Fox-Landi. It was due to my confusion in only adjoining elements i
_{k+1},..,i_{r}to S_{ik}, instead of taking the unions of S_{ik+1},..,S_{ir}with S_{ik}. - 9th March 2006. Fox-Landi is playing up again in relation to analysing Q(m)! eg. The program hangs when d=2,m=8,m[0]=1,m[1]=3,x[0]=0,x[1]=1.
- 25th February 2006. Added option of viewing transitions between classes in George Leigh's program.
- 25th February 2006. Added cycle-finding program for generalized 3x+1 functions.
- 24th February 2006. Added Example 7 of G. Venturini.
- 23rd February 2006. Added Example 1 of G. Venturini.
- 23rd February 2006. 3pm. I believe I have fixed the flaws in Fox-Landi. The error affected both programs for processing Q(m). There still remains an inefficiency due to my initial confusion about communicating transient states.
- 22nd February 2006. Found an error in Fox-Landi. I am currently working on it.
- 22nd February 2006. Added a program for finding the transition matrix of George Leigh's Markov chain Y
_{n}(x). - 9th January 2006. Added finding the canonical form of the Markov matrix Q(m) arising from generalized 3x+1 functions.
- 6th January 2006. Added a verbose option to Fox_Landi program.
- 4th January 2006. Fixed an error in the construction of the permutation of rows and columns which gives the canonical form in the Fox-Landi program.
- 29th December 2005. Added the Fox-Landi algorithm. I'm still learning about _REQUEST, _SESSION etc. so there may be some bugs in the front end of this program.
- 14th June 2005. After an email from a user of binary.html, I realised I had absent-mindedly forgotten to print " no solution" in the case that an examinaton of the relevant cfracs revealed this to be the case in
**binary.html**. - 25th January 2005. Added
**padiclog.html**. (Coded August 2004) - 9th September 2004. Added the option of printing the complete quotients in
**surd.html**. - 8th August 2004. Added
**binary.html**. - 5th August 2004. Found a transcription error in
**squareroot_.php**. Also wrote a better version of**quadratic.html**. - 16th July 2004. Added
**patz.html**. - 15th July 2004. Fixed some bugs in
**squareroot_.php**, which corresponded to bugs in BC program**squareroot**. These would have affected**cornacchia**. - 21st May 2004. Added
**discrete_log**. - 21st May 2004. While adding cong and cong1 to
**library.php**, I noticed a bug in finding squareroots (mod m). It was in a call to cong() instead of cong1 in sqroot1 in the file**squareroot_.php**. - 21st May 2004. Adding more functions to
**library.php**. This requires care to avoid clashes with other include files. - 20th May 2004. More carelessness. Changed name of include file
**mpower.php**to**library.php**in arithmeticm.php. - 28th April 2004. Improved my use of include files by creating a large include file called
**library.php**. - 27th April 2004. Fixed a small global variable problem arising when calculating Ramanujan's tau function tau_composite(n). Having factored n and obtained global variables representing the prime factors q[i] and their exponents k[i], I inadvertently changed these on subsequent factorisations involved in calculating tau(q[i]).
- 22nd April 2004. Hopefully I've fixed problems concerning multiple declarations in include files.
- 22nd April 2004. Fixed a small printing bug in square roots (mod n), when omega(n)=1.
- 22nd April 2004. Started introducing some order in the way I used include files. This has been causing some errors.
- 21st April 2004. Added calculating Ramanujan's tau function.
- 16th April 2004. Added solving ax
^{2}+by^{2}=m. - 16th April 2004. Added finding square roots (mod n).
- 7th April 2004. Added Pollard p-1 to factoring program.
- 6th April 2004. Added ord
_{m}a. - 6th April 2004. Added least primitive root (mod p).
- 6th April 2004. Added factoring and computing omega(n), phi(n), d(n), sigma(n) and mu(n).
- 24th March 2004. Added finding partial quotients of
*e*.^{l/m} - 22nd March 2004. Added factorising a non-negative non-singular matrix.
- 19th March 2004. Inserted a missing sign term in
`p-adic_.php`. - 17th March 2004. Added p-adic square root.
- 11th March 2004. Added 2adic square root.
- 27th February 2004. Added prime-power factorization of n!
- 17th July 2003. Improved the output of the log program when log
_{b}a is rational. - 27th February 2004. Added prime-power factorization of binomial coefficients.
- 17th July 2003. Improved the output of the log program when log
_{b}a is rational. - 13th June 2003. Fixed similar error to below in calculating classnumbers of binary quadratic forms of positive discriminant.
- 11th June 2003. Fixed an error in calculating class numbers of real quadratic fields.