docs: reorganize and simplify project vision documentation master
authorSvjatoslav Agejenko <svjatoslav@svjatoslav.eu>
Sat, 28 Mar 2026 00:24:11 +0000 (02:24 +0200)
committerSvjatoslav Agejenko <svjatoslav@svjatoslav.eu>
Sat, 28 Mar 2026 00:24:11 +0000 (02:24 +0200)
- Remove lengthy sections on hypercube rationale and entity mapping
- Consolidate "Inspiration" and "Ideas" sections
- Add new section on Datacube as fundamental data structure
- Streamline overall document structure

doc/index.org

index 31709ca..162d957 100644 (file)
@@ -47,15 +47,13 @@ arbitrary dimensional ([[id:96116550-a6a1-4700-bef7-865d0deee7ea][hypercube base
 engine ([[id:d2375acc-af14-4f18-8ad0-7949501178c5][as inspired by the brain]]) for general purpose visual computing
 environment called [[http://www2.svjatoslav.eu/gitbrowse/sixth/doc/index.html][Sixth]].
 
-Because [[http://www.paulgraham.com/rootsoflisp.html][Lisp is hackable self defined programmable programming
-language]] it would be used to provide [[https://en.wikipedia.org/wiki/Imperative_programming][imperative programming]] support.
-* Inspiration
+
+* Ideas / inspiration
 :PROPERTIES:
-:CUSTOM_ID: inspiration
-:ID:       0fa6354b-18c9-4120-bbf5-c7239aebecab
+:CUSTOM_ID: ideas
 :END:
 
-+ see also: [[https://en.wikipedia.org/wiki/OLAP_cube][OLAP cube]].
++ [[https://en.wikipedia.org/wiki/OLAP_cube][OLAP cube]].
 
 ** Brain
    :PROPERTIES:
@@ -99,10 +97,7 @@ http://www.mission-base.com/tamiko/theory/cm_txts/di-ch2.html
 we can pre-distribute data across computation units and perform
 parallel [[id:171fe375-c737-41e6-b429-a414f6abc5d8][geometrical computation]].
 
-* Ideas
-:PROPERTIES:
-:CUSTOM_ID: ideas
-:END:
+
 ** Integrate with lossless diamond square algorithm based multidimensional data compressor
 :PROPERTIES:
 :CUSTOM_ID: integrate-lossless-diamond-square-compressor
@@ -114,35 +109,6 @@ parallel [[id:171fe375-c737-41e6-b429-a414f6abc5d8][geometrical computation]].
 
 + Make demo lossless image and sound CODECS.
 
-* Reasons for hypercube
-:PROPERTIES:
-:CUSTOM_ID: reasons-for-hypercube
-:ID:       96116550-a6a1-4700-bef7-865d0deee7ea
-:END:
-
-+ Hypercube is quite general purpose data structure that naturally
-  encapsulates wide variety data and problems.
-
-+ Nicely captures apparent [[id:d2375acc-af14-4f18-8ad0-7949501178c5][properties of the brain]].
-
-+ Naturally supports distributed and parallel [[id:171fe375-c737-41e6-b429-a414f6abc5d8][geometrical data storage
-  and computation.]]
-
-+ Dedicated hardware like CM-1 can be built around hypercube concept
-  that results in data, computation process and hardware, all
-  beautifully fitting together while complementing each other
-  strengths.
-
-+ Hypercube stored data (and computation process) has geometry by its
-  nature and should fit nicely with "3D first" user interface ideology
-  of the parent [[http://www2.svjatoslav.eu/gitbrowse/sixth/doc/index.html][Sixth]] project.
-
-* Geometrical computation idea
-:PROPERTIES:
-:CUSTOM_ID: geometrical-computation-idea
-:ID:       171fe375-c737-41e6-b429-a414f6abc5d8
-:END:
-
 ** Distributed computation and data storage
    :PROPERTIES:
    :CUSTOM_ID: distributed-computation-and-data-storage
@@ -155,53 +121,12 @@ then found via geometrical search/comparison/lookup results. As a
 bonus, such geometrical *data storage* AND *computation* can be
 naturally made in *parallel* and *distributed*.
 
-Learning means building/updating/re-balancing the model (the hard
-part). Question answering is making (relatively simple) lookups
-(geometrical queries) against the model.
-** Mapping hypercube to object-oriented model and relational database
-   :PROPERTIES:
-   :CUSTOM_ID: mapping-hypercube-to-oo-model-and-rdb
-   :ID:       a117c11e-97c1-4822-88b2-9fc10f96caec
-   :END:
-
-Object oriented programming is inspired by the way human mind
-operates. It allows programmer to express ideas to computer in a more
-human-like terms.
-
-It is actually also possible to map object model and relational
-database to geometrical hyperspace:
-
-+ Object or database table row is a point in hypercube arbitrary
-  dimensional space. Each object member variable or database table
-  column can be mapped to its own dimension in hypercube. That is: if
-  class declares 4 variables for an object, then corresponding object
-  can be stored as a single point inside 4 dimensional
-  hypercube. Variable values translate to point coordinates in that
-  hypercube. That is: numbers and string can be translated to linear
-  value that can be used as a coordinate along particular dimension.
-
-+ Each object class or database table declares its own hypercube that
-  contain instances (objects) of that class or rows of a table.
-
-** Mapping entity relations in hypercube
-   :PROPERTIES:
-   :CUSTOM_ID: mapping-entity-relations-in-hypercube
-   :ID:       b6b15bd2-c78b-4c51-a343-72843a515c29
-   :END:
-
-   Consider we want to create database of:
-+ Books.
-+ Authors.
-+ Effort: Amount of time contributed by every author to every book
-  that he/she wrote.
-
-Information above can be represented as 3D cube where dimensions are:
-+ X: Book
-+ Y: Author
-+ Z: Effort
+** The "Datacube" is a Fundamental Data Structure
 
-Points in that cube would nicely capture many to many relations
-between authors and the books.
+The world is not just Sets (SQL), Hierarchies (XML/JSON), or Graphs
+(SPARQL). *Arrays* are the fourth pillar. Treating them as "just
+another file format" or "a blob in a table" is a fundamental error
+that leads to performance collapse.
 
 * Current status
 :PROPERTIES: