Path: utzoo!utgpu!utstat!jarvis.csri.toronto.edu!mailrus!cornell!calvin!johns From: johns@calvin.EE.CORNELL.EDU (John Sahr) Newsgroups: comp.lang.c Subject: Re: Addition of pointers Summary: pointers an "affine space" Keywords: Pointer addition Message-ID: <1065@calvin.EE.CORNELL.EDU> Date: 13 May 89 16:45:59 GMT References: <2299@mit-caf.MIT.EDU> <542@lakart.UUCP> Reply-To: johns@calvin.ee.cornell.edu.UUCP (John Sahr) Organization: Cornell Space Plasma Physics Group Lines: 37 This subject has gotten beaten around a bit lately, and probably doesn't need any more beating by me. However, I was reminded about of the notion of an "affine space" which is just like a regular vector space except that for an affin space, there is no fixed origin. From V. I. Arnold, _Mathematical methods of Classical Mechanics_, Springer-Verlag, 1978.... {begin quote, page 4} a a+b xx xo b xx xo xxxxx ------> xxxxx xxx xxx Figure 1 Parallel Displacement _Affine n-dimensional space A^n_ is distinguished from R^n in that there is ``no fixed origin.'' The group R^n acts on A^n as _the group of parallel displacements_ (figure 1): a -> a + b, a elof A^n, b elof R^n, a + b elof A^n [Thus the sum of two points in A^n is not defined, but their difference is defined and is a vector in R^n.] {end quote} All the "b's" should be bold, and "elof" is "element of" the little "member of" sign. "_some text_" indicates italic emphasis. R^n is R superscripted by n. So, this analogy puts pointers as members of a discrete one dimensional affine space, and offsets as members of the integers ("discrete R^1"). -- John Sahr, Dept. of Electrical Eng., Cornell University, Ithaca, NY 14853 ARPA: johns@calvin.ee.cornell.edu; UUCP: {rochester,cmcl2}!cornell!calvin!johns