[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Tue, 4 Sep 2007 22:09:38 -0500
I have some documentation on Crystal although it hasn't been brought
up to date with my latest experiments.
The central conceptual idea is that the problem resides in a
krops-style knowledge network which is surrounded by a "crystal"
consisting of many different facets. Each facet retrieves, formats,
displays, and manipulates the problem. (It's a model-view-controller
pattern). Think of your problem as a graph floating in space
surrounded by a clear crystal, each facet maintaining a view of the
graph. The problem you are working on is embedded in the graph and the
views in the facets. Thus, trivially, the documentation facet, the
source code facet, the literate facet, etc. "Rotating" the crystal to
a new facet gives a new view of the same problem.
The crystal maintains an "intensional stance" (IS), a representation
of the state of the researcher that is used to predict goals. The IS
is used to drive things like literature searching in the background to
present related papers. It also modifies the connections between
facets, or creates new facets, so central focus concepts are
emphasized on each visible facet. Essentially it is a "research
assistant", working to modify itself to match your needs. The IS is
interactive and queries you to add or resolve information need to
maintain or update the stance.
Because the crystal is adaptive it learns a deep view of your
knowledge about the problem. Thus copying knowledge from your crystal
to mine is a non-trivial task. Think of two people, a computer person
and a circuit designer. Each one has a completely different
"knowledge graph" around the concept of a "register". They use the
same word but mean completely different things. Your crystal knows
what you mean by a "register", which may not be what I mean. This
raises interesting "knowledge transfer" questions.
Krops is a prior piece of research I did that unifies a knowledge
representation graph (essentially Eric May's Krep) and a rule based
programming language (essentially Charles Forgy's OPS5). The krops
object can be viewed in either form as the representations are dual.
There is an isomorphism between a rete rule tree and a knowledge
graph. Krops was the language underlying IBM's Financial and
Marketing Expert System (FAME).
Needless to say this involves a "petamachine". That is, a machine with
a terahertz of cpu, a terabyte of memory, a petabyte of storage, a
terahertz of bandwidth, and a continuous connection to a flow of newly
published research papers (hopefully in a literate format) which can be
stored, indexed, pushed into the krops net, searchable by concept, imported,
compiled, executed, etc. Each facet has its own CPU, many processors can
search literature in parallel (see Google's MapReduce algorithm but using
Krops and inflowing literature).
I guessed that such a petamachine was 30 years out but found out that a
petabyte of storage isn't all that expensive anymore and 400 2.5Ghz
processors is on the near horizon.
The big problem will be the mathematical literature. You can put all of
the known published mathematics in a petabyte of storage. What you'd
like to have is a continuous stream of recent "publications" (essentially
exports from other crystals) so you can keep up to date. Unfortunately
the idea of continuously sharing literate documents in mathematics has
a huge social/economic/political/technical set of barriers. (Who gets
"first idea"? (social) Who pays? (economic) Who gets tenure? (political)
What literate format? (technical)).
I've started addressing this problem with Carlo Traverso, the head of
the Math Dept. at the University of Pisa but progress is glacial at best.
We'd like to have a "live journal" (Carlo's term) or a "literate journal"
(my term) where researchers could submit literate papers that could be
just "drag-and-dropped" onto a common system.
The work on the common system already exists and is being done by Jose
Portes, the Doyen project. I started that originally at City College
of New York. Jose has done all of the implementation, documentation,
and publication. See <http://doyencd.sourceforge.net>)
The crystal work is mentioned in my axiom research agenda, which used to
be maintained (up until October of 2004) when the wiki went live at:
There you can see the crystal idea mentioned, including KROPS, IS, etc.
When I recover the Axiom website I'll put up documentation that
describes the current state of the research.
- [Axiom-developer] Crystal,