http://www.tweedledum.com/rwg/stanfordn3.pdf (p 14) (Also: Gosper, Strip mining in the abandoned orefields of Nineteenth Century mathematics, in Computers in Mathematics (D. Chudnovsky & R. Jenks, eds.) pp 261-283, m. dekker, N. Y.) "8. Continued fractions This is three N - K planes, j = −1, 0, 1, joined by two J matrices. In the top (j = 1) plane, the k direction computes a continued fraction, and on the bottom (j = −1), it’s the n direction. [...] Thus, to get a relation between two continued fractions, we must j-hop between planes before switching directions. If k runs from c to ∞ and n runs from d to ∞, and the corresponding continued fractions converge, then they are insensitive to whatever subsequent matrices accrue on the right by way of path closure. I.e., the two paths can be (j,k,n) = (0,c,d) → (1,c,d) → (1,∞,d) and (0,c,d) → (−1,c,d) → (−1,c,∞). This yields the identity [an undersimplified version of that symmetric CF identity I sent the other day]" All of a sudden, I'm deriving false identities with this! E.g., with K and N matrices (c85) [km(k,n),nm(k,n)] [ 4 n 4 k 11 1 ] [ n k 13 1 ] [ --- + --- + -- - ] [ - + - + -- - - ] [ 5 5 30 5 ] [ 5 5 60 5 ] (d85) [[ ], [ ]] [ k 1 1 ] [ k 1 1 ] [ - - - - k + - ] [ - + - n + - ] [ 2 6 3 ] [ 2 6 4 ] Check path invariance: (c81) CHECKM(); [ 0 0 ] (d81) [ ] [ 0 0 ] Confirm convergence of a dozen N terms: (c82) (PRUD(NM(0,N),N,0,11),DFLOAT(%%[1]/%%[2])); (d82) [- 1.12262566430759d0, - 1.12264219198252d0] This says that as a function of the tail t, the PRUD (matrix product) computes (A t + B)/(a t +b), with A/a ~ B/b ~ -1.12262. This is the "insensitivity" claimed above. Continuing to wander in the +n and +k directions shouldn't change this value much. But tacking on 69 k steps: (c88) (PRUD(NM(0,N),N,0,11) . PRUD(KM(K,12),K,0,69),DFLOAT(%%[1]/%%[2])); (d88) [0.30872240339868d0, 1.27956902429756d0] This is batbleep! Not only was the value bashed, the convergence was destroyed. Note that by path invariance, it doesn't matter how we got here: (c89) (PRUD(KM(K,0),K,0,69) . PRUD(NM(70,N),N,0,11),DFLOAT(%%[1]/%%[2])); (d89) [0.30872240339868d0, 1.27956902429756d0] There's nothing obviously wrong with the K matrix except for being a bit slow to converge: (c86) (PRUD(KM(K,0),K,0,11),DFLOAT(%%[1]/%%[2])); (d86) [1.10980568563031d0, 1.48744247508643d0] (c87) (PRUD(KM(K,0),K,0,69),DFLOAT(%%[1]/%%[2])); (d87) [1.62173336398064d0, 1.62175009332196d0] Except it's not even the same sign as the N product! There's nothing magic about 69 terms of K. Using 11 instead still fails bigtime; (c83) (PRUD(NM(0,N),N,0,11) . PRUD(KM(K,12),K,0,11),DFLOAT(%%[1]/%%[2])); (d83) [- 0.77240969070225d0, - 1.11033801208252d0] (c84) (PRUD(KM(K,0),K,0,11) . PRUD(NM(12,N),N,0,11),DFLOAT(%%[1]/%%[2])); (d84) [- 0.77240969070225d0, - 1.11033801208252d0] Maybe the kids can help get to the bottom of this. --rwg (j-hopping to force continued fraction form is just cosmetic, and only adds to the confusion above.)