Continuing on from the previous post in this series, let me ask a simple question-
Why is Deuterium not Helium-4?
Let me give the readers some background.
Deuterium also called heavy hydrogen, is a stable isotope of hydrogen with a natural abundance in the oceans of Earth of approximately one atom in 6,400 of hydrogen (~156.25 ppm). Deuterium thus accounts for approximately 0.0156% (alternately, on a mass basis: 0.0312%) of all naturally occurring hydrogen in the oceans on Earth. The nucleus of deuterium, called a deuteron, contains one proton and one neutron, whereas the far more common hydrogen nucleus contains no neutron.
By most gross chemical and physical measures, Deuterium is indistinguishable from Hydrogen.
Helium-4 is a non-radioactive isotope of helium. It is by far the most abundant of the two naturally occurring isotopes of helium, making up about 99.99986% of the helium on earth. Its nucleus is the same as an alpha particle, consisting of two protons and two neutrons.
The helium we use in balloons, blimps, NMR machines etc is Helium-4.
Now ask yourself, why would something with one proton, one neutron, one electron differ so much in properties from something that had exactly twice of the same? Why is alpha decay a very common mechanism of losing instability in the atomic nucleus? Remember that an alpha particle is a helium-4 nucleus without electrons. Why does Helium-4 exhibit properties such as superfluidity? Sure, there are many theories to explain this behavior- but we keep on coming back to one issue.
What makes even the nucleus of helium-4 so different from deuterium? Is the specialness of Helium-4 a result of its structure or the universe we exist in?
Changes in properties that cannot be explained by arithmetic, imply transformation of the substance. But how does the rest of the universe know that something is an atom or nucleus of helium and not two close deuterons or molecular deuterium?
What is so odd about assuming that atoms and sub-atomic particles are the result of something similar to Object-oriented programming?
Simple, non-OOP programs may be one long list of commands. More complex programs will group lists of commands into functions or subroutines each of which might perform a particular task. With designs of this sort, it is common for the program’s data to be accessible from any part of the program. As programs grow in size, allowing any function to modify any piece of data means that bugs can have wide-reaching effects. By contrast, the object-oriented approach encourages the programmer to place data where it is not directly accessible by the rest of the program. Instead the data is accessed by calling specially written ‘functions’, commonly called methods, which are either bundled in with the data or inherited from “class objects” and act as the intermediaries for retrieving or modifying that data. The programming construct that combines data with a set of methods for accessing and managing that data is called an object.
An object-oriented program may thus be viewed as a collection of interacting objects, as opposed to the conventional model, in which a program is seen as a list of tasks (subroutines) to perform. In OOP, each object is capable of receiving messages, processing data, and sending messages to other objects. Each object can be viewed as an independent “machine” with a distinct role or responsibility. The actions (or “methods”) on these objects are closely associated with the object. For example, OOP data structures tend to ‘carry their own operators around with them’ (or at least “inherit” them from a similar object or class). In the conventional model, the data and operations on the data don’t have a tight, formal association.
Get it? and yes, I am aware about the work of Stephen Wolfram.