On Dec 31, 2012, at 1:21 PM, "Pascal J. Bourguignon" <[email protected]> wrote: > > Now we know that a given formal system cannot be at the same time > complete and consistent, but nothing prevents an automatic system to > work with an incomplete system or an inconsistent system (or even a > system that's both incomplete and inconsistent). > > The only thing, is that sometimes you may reach conclusions such as 1=2, > but if you expect them, you can deal with them. We do everyday. > > Notably, by modifying the mapping between the domain and the formal > system: for different parts of the domain, you can use different formal > systems, or avoid some axioms or theorems leading to a contradiction, to > find some usable conclusion.
In chemical engineering, you design complex, dynamic systems that look like distributed computing systems in software, except that you replace bits with molecules. In the abstract, they are incredibly similar. I've often stated that my chemical engineering education was a valuable foundation for my later work in distributed and parallel systems. Chemical engineering systems commonly have an interesting property: despite being built from a system of physics equations and carefully measured facts about reality, you can reduce that single set of inputs to multiple mutually inconsistent models of system behavior with material differences. The discipline has a rich set of heuristics and methods for dealing with complex distributed system problems that have significant internal contradictions, and with obviously good results, but you rarely see explicit analogues applied in software systems. Computer science, perhaps due to its direct mathematical derivation, is not comfortable with an equivalent state of affairs where "1=2". Nonetheless, models of real complex systems tend to have this property. _______________________________________________ fonc mailing list [email protected] http://vpri.org/mailman/listinfo/fonc
