summaryrefslogtreecommitdiff
path: root/israfil-foundation-nspace/src/site/apt/Specification.apt
diff options
context:
space:
mode:
Diffstat (limited to 'israfil-foundation-nspace/src/site/apt/Specification.apt')
-rwxr-xr-xisrafil-foundation-nspace/src/site/apt/Specification.apt63
1 files changed, 63 insertions, 0 deletions
diff --git a/israfil-foundation-nspace/src/site/apt/Specification.apt b/israfil-foundation-nspace/src/site/apt/Specification.apt
new file mode 100755
index 0000000..5da06ac
--- /dev/null
+++ b/israfil-foundation-nspace/src/site/apt/Specification.apt
@@ -0,0 +1,63 @@
+This doc defines the theoretical nature of an NSpace and Sparse NSpace implementation.
+
+
+
+NSpace
+
+ Definition:
+ - N-Dimensional Space representation
+ - NSpace is set of Dimensions
+ - Dimension is a set of Positions
+ - Each dimension is named
+ - Each co-ordinate is specified using names not numbers
+ IOW: Domain of each dim. is specified as a set of names
+ - Number of dimensions can change throughout lifecycle
+ - Dimensions are not ordered in a Space.
+ - Positions are not ordered in a Dimension
+ - value at fully-qualified-coordinate is of type Object
+
+
+ Operations
+ - When looking up co-ordinate - specify dimension + position
+ - 2 kinds of search (lookup and extract)
+
+ Questions:
+ - can an NSpace hold an (NSpace)value
+
+
+Dimension
+
+ Definition
+
+SparseNSpace
+
+ Characteristics:
+
+
+
+ Questions
+
+Example:
+
+ lookup()
+ Given a 5Space
+ specify 3 ordinates in lookup
+ Get a 5Space (3 dims have size of 1)
+
+ extractSlice()
+ Given a 5Space
+ specify 3 ordinates in lookup
+ Get a 2Space
+
+ getDimensions()
+ returns a set of Dimensions
+
+ getDimension(String name)
+ returns a set of Positions
+
+ space.addDimension(Dimension dimension, String origin)
+ all the points in the current system have to know of new dim.
+
+
+
+