March 6, 2017

Today's AI technology is amazing.

Only a few short years ago, only humans could interpret the meaning of text and speech. Now our cell phones understand our voices and language well enough to distinguish accents, metaphors, and sarcasm.

IBM's Watson supercomputer even understood Alex Trebek well enough to beat some of Jeopardy!'s® best players.

Computers achieve natural-language understanding through a series of logically consistent normalization steps -- starting with the processing of basic sounds to recognizing words and then understanding sentences.

If computers can understand natural language using logically consistent processes, shouldn't we be able to use similar processes to break down and normalize software?

In fact, shouldn't software be easier to normalize than the messy ambiguity of human communication?

The answer is yes.

Phase Change normalizes software source code into formal data types and organizes them into hierarchical structures that are probabilistically linked (horizontally and vertically). Our technology unlocks the vast domain and system knowledge embedded in software and makes it available to anyone involved in creating and supporting software.

To learn more about how Phase Change's revolutionary technology transforms chaotic code into coherent data and intractable software into artificially intelligent agents, read Steve Bucuvalas' paper: "An Analogy: Software AI and Natural Language."