From: Svjatoslav Agejenko Date: Sat, 28 Mar 2026 00:24:11 +0000 (+0200) Subject: docs: reorganize and simplify project vision documentation X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=commitdiff_plain;h=a6b4155c92676bd34bcf54215a74c985cfe924a5;p=sixth-data.git docs: reorganize and simplify project vision documentation - 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 --- diff --git a/doc/index.org b/doc/index.org index 31709ca..162d957 100644 --- a/doc/index.org +++ b/doc/index.org @@ -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: