Lately, I’ve been busy writing 3 papers (for Operation Lisbeth). In the process, I’ve had an “epiphany” experience which I’ve had several times before and which I’d like to describe to you. It’s an experience related to Bayesian networks (B nets). Often, when I have questions of the type: quantum mechanics predicts such and such doesn’t it? Or what does quantum mechanics predict for such and such?, I find that B nets are an excellent “programming language” to answer such questions in a very conclusive and satisfying way, at least for my taste.
Everyone that has ever programmed a computer has had this experience: You start with an algorithm that you think you understand, but after programming it on a computer you end up understanding it much better than before. The process of programming it makes you aware of a lot of subtleties about it that you didn’t realize before.
I find the same is true when I use B nets. I start with a crazy probabilistic algorithm that I think I understand. Then I “program” it in the language of B nets, and all of a sudden I realize how poorly I originally understood it. Often my original algorithm was slightly wrong or incomplete, and the language of B nets comes to the rescue, allowing me to fix the parts that didn’t work at first.
Note that by “programming” my crazy algorithm in the language of B nets, I don’t necessarily mean writing an actual computer program for it. I mean simply stating it in the precise language of B nets. A computer program is not necessary, even though going that extra mile might produce extra satisfaction. Computer software for doing both classical and quantum B nets does already exist, and I believe it will continue to improve in the future. I even believe that quantum computers will revitalize the field of B nets, by allowing us to perform B net calculations much faster, both for classical and quantum B nets.
I have found that this “programming” with B nets strategy works for BOTH classical and quantum mechanical probabilistic algorithms.
For classical algorithms, I program in the language of classical B nets pioneered by Judea Pearl and others. (For an example of this strategy, see for example this paper of mine, in which I review classical Shannon information theory, stated in the language of classical B nets.)
For quantum algorithms, what I like to do is to FIRST find the classical version of the algorithm, and program that in terms of classical B nets. SECOND, I generalize the classical algorithm to quantum mechanics, and program that in the language of quantum B nets (quantum B nets are discussed in this paper). As an example of this TWO STEP STRATEGY, see, for instance, this paper of mine about Maxwell’s Demon.)
Related Blog Posts