Some new GP features snfrank snfrank compute the p-rank of a Smith normal form: ? snfrank([4,4,2], 2) %82 = 3 ? snfrank([4,4,2], 4) %83 = 2 ? snfrank([4,4,2], 8) %84 = 0 ? snfrank([4,4,2], 0) %85 = 3