Sunday, May 20, 2007

Quantum information technology

One far out field that may have dramatic implications for computing and software design in the coming decades is the emerging research in quantum information technology.

For example, from the Multidisciplinary University Research Initiative (MURI) program of Massachusetts Institute of Technology (MIT) and Northwestern University (NU), we read that:

Quantum superposition and quantum entanglement are the bedrock on which new theoretical paradigms for information transmission, storage, and processing are being built. The preeminent obstacle to the development of  quantum information technology is the difficulty of transmitting quantum information over noisy and lossy quantum communication channels, recovering and refreshing the quantum information that is received, and then storing it in a reliable quantum memory.  

With support from the Multidisciplinary Research Program of the University Research Initiative (MURI), we have assembled a truly interdisciplinary team from researchers at MIT and Northwestern University to overcome this obstacle. The focus of our program is an architecture we have established for long-distance, high-fidelity qubit teleportation. Its key elements are:

  • ultrabright, narrowband sources of polarization-entangled photon pairs;
  • long-distance transmission of entangled photons over standard telecom fiber;
  • qubit storage and processing in trapped atom quantum memories.

Although some of these concepts may make more obvious sense down at the bit, byte, chip, and machine language levels, I suspect that the concepts may have even greater potential if they can be transplanted to the level of software, software components, and software agents.

Try to imagine what quantum information technology might mean at the level of the Semantic Web and Web Services.

Try to imagine a large number of swarms of software agents interacting via the exchange and sharing of quantum information and built upon the concept of quantum entanglement.

-- Jack Krupansky

Sunday, May 06, 2007

Four levels of language for semantics and knowledge

The open question of language level comes up when considering the open question of how to represent, access, manipulate, and otherwise use knowledge and meaning in the form of a distributed knowledge web or semantic web. I certainly do not have any  immediate answer, but I was thinking that rather than envisioning one unified "knowledge" language, possibly we need a multi-level language model:

  1. Low-level "assembly" language - work with meaning and knowledge at a very atomic level
  2. High-level language - a very expressive language that focuses on higher-level structured meaning, probably leveraging contextual meaning
  3. Scripting language - a concise, terse, convenient method for working with knowledge that emphasizes broad expressive power rather than specific detail and nuanced meaning
  4. Natural language - heavily dependent on context and very ambiguous, but very easy and natural to use. Appropriate for "display" of knowledge structures.

One issue is whether natural language is really a separate level or can be used at all three of the other levels.

Another issue is that we need to be able to work with meta knowledge, to treat packages of knowledge as black boxes and networks of interconnected black boxes to be manipulated in an abstract sense, separated from the actual, true meaning of the contents of those black boxes. Possibly this is a requirement at each of the four language levels.

Another issue is multiplicity, the number of distinct languages at each level. Obviously we have many natural lanuages. Multiple scripting and higher-level languages makes sense. Having a single, common, foundation "knowledge assembly language" has a lot of appeal, but is it really viable and is it clearly really advantageous relative to having a multiplicity of low level knowledge and meaning paradigms? I don't see any clear answer at this point in time.

Is the current Semantic Web at this assembly level or high-level or scripting level? I suspect that the answer is that it is not clear. Clearly there is some amount of scripting being done in XML. Clearly there is some amount of high-level semantics being done (e.g., RSS and web feeds). And clearly there is a fair amount of very low level semantic use. But is XML more of a lexical and syntactic language than a true semantic language? It seems to me that its only current power at the meaning level comes when the people and programs a priori agree on shared meaning representation conventions, and that is precisely what we would like to see inherently embodied within a true knowledge language at any of the levels that I have proposed. In short, it appears that there is very little in the way of meaning represented within the Semantic Web, and that the only real meaning is hard-coded into the user agents that communicate via the Semantic Web. In other words, at best, the Semantic Web is everything but semantics, and that the Semantic Web simply facilitates the exchange of information that user agents can interpret as meaning using hard-wired or agreed semantics.

-- Jack Krupansky