Abstract
A spatial object consists of data assigned to points in a space. Spatial objects, such as memory states and three dimensional graphical scenes, are diverse and ubiquitous in computing. We develop a general theory of spatial objects by modelling abstract data types of spatial objects as topological algebras of functions. One useful algebra is that of continuous functions, with operations derived from operations on space and data, and equipped with the compact-open topology. Terms are used as abstract syntax for defining spatial objects and conditional equational specifications are used for reasoning. We pose a completeness problem: Given a selection of operations on spatial objects, do the terms approximate all the spatial objects to arbitrary accuracy? We give some general methods for solving the problem and consider their application to spatial objects with real number attributes.
Similar content being viewed by others
References
Abdul-Rahman A, Chen M (2005) Spectral volume rendering based on the Kubelka-Munk theory. Comput Graph Forum 24(3): 413–422
Abramowitz M, Stegun IA (1964) Handbook of mathematical functions with formulas, graphs, and mathematical tables. Dover, New York
Bourbaki N (1966) General topology, part 1 and 2. Springer
Blanck J, Stoltenberg-Hansen V, Tucker JV (2002) Domain representations of partial functions, with applications to spatial objects and constructive volume geometry. Theor Comput Sci 284: 207–224
Bergstra JA, Tucker JV (1987) Algebraic specifications of computable and semicomputable data types. Theor Comput Sci 50: 137–181
Bergstra JA, Tucker JV (1995) Equational specifications, complete term rewriting systems, and computable and semicomputable algebras. J ACM 42: 1194–1230
Chen M, Tucker JV (1998) Constructive volume geometry. Technical report CS-TR-98-19, University of Wales, Swansea, July 1998
Chen M, Tucker JV (2000) Constructive volume geometry. Comput Graph Forum 19(4): 281–293
Dugundji J (1966) Topology. Allyn and Bacon Inc.
Edalat A, Lieutier A (1999) Foundation of a computable solid modeling. In: Proceedings of the fifth ACM symposium on solid modeling and applications, pp 278–284
Engelking R (1989) General topology. Heldermann Verlag
Fox ACJ, Harman NA (2000) Algebraic models of correctness for microprocessors. Form Asp Comput Sci 12: 298–312
Fox ACJ, Harman NA (2003) Algebraic models of correctness for abstract pipelines. J Algebraic Logic Program 57: 71–107
Grätzer G (1979) Universal algebra, 2nd edn. Springer-Verlag, Berlin
Hearn D, Baker MP (2004) Computer graphics with OpenGL, 3rd edn. Pearson Prentice-Hall
Hoffman K (1975) Analysis in Euclidean space. Prentice Hall,Inc., Englewood Cliffs
Islam S, Silver D, Chen M (2007) Volume splitting and its applications. IEEE Trans Visual Comput Graph 13(2): 193–203
Johnson K (2007) The algebraic specification of spatial data types with applications to constructive volume geometry. PhD thesis, University of Wales, Swansea
Kelley JL (1975) General topology. Springer-Verlag, New York
Kubelka P, Munk F (1931) Ein beitrag zur optik der farbanstriche. Zeitschrift für Technische Physik 12: 593–601
Levoy M (1988) Display of surfaces from volume data. IEEE Comput Graph Appl 8(3): 29–37
McCoy NH (1948) Rings and ideals. The Mathematical Association of America
Meinke K (1996) Topological methods for algebraic specification. Theor Comput Sci 166: 263–290
Meinke K, Steggles V (1993) Specification and verification in higher-order algebra: a case study of convolution. In: Heering J, Meinke K, Möller B, Nipkow T (eds) HOA ’93: selected papers from the first international workshop on higher-order algebra, logic, and term rewriting, vol 816. Springer-Verlag, London, pp 189–222
Meinke K, Tucker JV (1992) Universal algebra. In: (eds) Handbook of logic for computer science. Oxford University Press, Oxford, pp 189–411
Naber GL (1980) Topological methods in Euclidean spaces. Cambridge University Press, Cambridge
Porter T, Duff T (1984) Compositing digital images. In: SIGGRAPH ’84: proceedings of the 11th annual conference on computer graphics and interactive techniques. ACM Press, New York, pp 253–259
Requicha AAG (1980) Representations for rigid solids: theory, methods, and systems. Comput Surv 12(4): 437–464
Requicha AAG, Voelcker HB (1982) Solid modeling: a historical summary and contemporary assessment. IEEE Comput Graph Appl 2: 9–24
Stoltenberg-Hansen V, Tucker JV (1995) Effective algebras. In: (eds) Handbook of logic for computer science, vol 4. Oxford University Press, Oxford, pp 357–526
Simmons GF (1963) Introduction to topology and modern analysis. McGraw-Hill, New York
Strengert M, Klein T, Botchen R, Stegmaier S, Chen M, Ertl T (2006) Spectral volume rendering using GPU-based raycasting. Vis Comput 22(8): 550–561
Stone MH (1948) The generalized Weierstrass approximation theorem. Math Mag 21(4): 167–184
Stroud KA (2007) Engineering mathematics, 6th edn. Palgrave Macmillan
Stephenson K, Tucker JV (2011) Data, syntax, and semantics, an introduction to modelling programming languages. Swansea University
Tucker JV, Zucker JI (1998) Computable functions and semicomputable sets on many sorted algebras. In: (eds) Handbook of logic for computer science, vol 5. Oxford University Press, Oxford, pp 317–523
Tucker JV, Zucker JI (1999) Computation by while programs on topological partial algebras. Theor Comput Sci 219(1–2): 379–420
Ward DM (2006) A theory of computer instructions. Sci Comput Program 60: 244–273
Winter AS, Chen M (2001) vlib: a volume graphics API. In: Volume graphics 2001. Springer-Wien, New York
Wechler W (1992) Universal algebra for computer scientists. Springer-Verlag, Berlin
Winter AS. http://vg.swan.ac.uk/vlib/. Accessed July 2011
Author information
Authors and Affiliations
Corresponding author
Additional information
Jim Woodcock
Rights and permissions
About this article
Cite this article
Johnson, K., Tucker, J.V. The data type of spatial objects. Form Asp Comp 25, 189–218 (2013). https://doi.org/10.1007/s00165-011-0182-7
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-011-0182-7