A SODV Update

From MOQ.FI Wiki
Jump to: navigation, search

Pirsig's latest and possibly last major contribution to philosophy may have been his to Paul Turner in 2003. I have criticized this so-called SODV paper because it did not adequately and unambiguously state its intended conclusion. Because of this, I did not understand what was the purpose of that paper, metaphysically. A significant part of my critique was directed towards the distinction between subjects and objects, as presented in the "Subjects, Objects, Data and Values" paper, which along with a letter to Paul Turner appears to be among Pirsig's last major contributions to metaphysics - partly due to the fact that such an established person may make nearly any kind of claims regarding an important topic. He doesn't even need to be right if it would be good enough to direct attention to the topic so that someone else would make a contribution.

It has been a nuisance that no analytical definitions of the difference between "subjects" and "objects", and "subjectivity" and "objectivity", have been produced for AMOQ. I seem to have produced them now.

If we wanted to take a special measure against this ambiguity we could rename "subjects" and "objects" as "processes" and "objects". Upon writing this I remember that I've somewhere else written as if "processes" and "patterns" could be contrasted in a similar manner as I do here. That may have been a mistake. Processes and objects may both be patterns. But processes are not essentially objects because they may have attributes that are unknown to a participant. Objects, on the other hand, are essentially not processes because being known by its attributes is the defining feature of objecthood.

Had Pirsig substituted each instance of "subject" in SODV with "process" I would have understood what he apparently meant with that paper. He probably meant the right thing but his wording was not exact enough to appear useful to me until now.

Why did Pirsig publish that paper? Was that an act of a socialite or an act of a metaphysician? Whatever it was, from a metaphysical viewpoint it looks like Pirsig tries to present a method for decreasing the resolution of MOQ from 4 to 2. What use could this be? It does not seem to be useful for formalizing Socionics because even though the resolution would seem to match, the borders of the pixels would be dislocated - at least if we go along with the "tepid vs. intense" distinction I have presented in the World Socionics Society Facebook group.

Pirsig's distinction seems useful for some Four Mountains design issues. Feel free to examine the latest version of this artificial intelligence data structure at http://a.moq.fi/test486.htm but it does not exactly conform to the specification I present here. The version is old anyway, but it was current upos the writing of this piece.

Since inorganic and biological patterns are objects, we may use taxonomical (ie. trivial) reasons to justify certain user interface design choices in that application. That these choices are trivially justified is important because that way the structure of the user interface is easier to explain to someone.

The basic view of the Four Mountains user interface should have one table for each level of object and one table for each level of process.

The above feels like the shortest unambiguous way to describe the tables of the user interface in the basic view.

If we said that the basic view of Four Mountains should have one table for each level, we would be right, but that would be meaningless for a programmer, because Four Mountains source code does not really use the levels for anything except help. The word "level" is mentioned in some code that generates help messages that are shown to the user when he hovers the mouse on a certain slot of the grid. It would be very difficult for a coder to figure out what is a level by looking at that code. If he tried to figure that out he'd be confused by the fact that it's meaningful to speak of levels as if their members are patterns, but it's also meaningful to speak of levels as if their members are objects or processes.

Both interpretations make sense but mean different things. In order to explain what it would mean to speak of levels as if their members are patterns we first have to define what it would mean to speak of levels as if their members are objects or processes.

The Difference Between an Object and a Process

An object is something that is known by its attributes. It is a variable type of JavaScript, but in this explanation of a JavaScript implementation of AMOQ an "AMOQ object" means a JavaScript object whose (metaphysical) value is a "Val object". A Val object is another AMOQ-specific JavaScript object although it could be modeled simply as an array of integers without excessive difficulty.

An AMOQ object needs to have also other attributes than value in order to properly distinguish itself from a value. To be sure, a value is also a type of a JavaScript object for a programmer, as it has the numeric attributes of subjective, objective, normative and mystical value (and possibly some other but not arbitrary attributes). But I do not mean that kind of an object. I mean an AMOQ object that is defined as a value with at least one attribute that is something else than that value. This is what we are to contrast with a process.

A process is something that is known by affecting factors that are known to affect it. These factors can be modeled as objects but the outcome of altering them cannot or is not supposed to be.

The members of the inorganic and biological levels are objects in the AMOQ sense. They differ from each other so that biological patterns have volition. According to Pirsig, inanimate bodies might "voluntarily" gravitate towards each other, but such volition is ignored now because it's confusing. Volition means we expect an object to deliberately do something. It is possible to interpret the border between "voluntary" and "involuntary" as fuzzy but we don't do so now. The other aspects of the model seem more important.

A biological value is the value of an inorganic object to the extent said inorganic object is biological. Any biological value of an object is thus separate from its inorganic value, but every biological object has an inorganic attribute in rational epistemology. It would be common sense to understand that attribute as the "body" of a "person". In gnostic epistemology no biological object would have an inorganic attribute but all of them would be expected to have a social and an intellectual attribute unless the programmer deems such attributes redundant for modeling some particular instance. But the metaphysician would think they're still there even though the programmer doesn't write any code to model them. Because of the different epistemology the metaphysician might wish to name these attributes according to the subjective levels, not according to the objective levels. In fact, the programmer might need to do that in order to write a good program. But there's also a chance he doesn't need to. We don't know yet.

Inorganic objects consist of substance and form. Both of them either are a Val object or include one or more Val object. The total value of the inorganic object can be calculated by summing the values of substance and form. Substances may be thought of as lattices of values or even as some kind of hybrids of lattices and sets, but same goes for forms. I am currently expanding the model into this direction to facilitate basic features but agree that the model can probably be extended indefinitely into this direction so this extension process should be stopped when we have extended enough. Extending one's perception of reality in this manner seems to be a defining feature of empirical science so there's not exactly a shortage of options here.

Processes differ from AMOQ objects because they are not AMOQ objects even though they are JavaScript objects. However, their value may depend entirely on the value of AMOQ objects. Of course, we are speaking about static value here. But value, that the system could not differentiate from Dynamic Quality even though we know it's just us, can be input into the system so that the user of Four Mountains manipulates the system as a biological object within that system.

This is my intended way of operating Four Mountains. Having to directly alter values of the system in a role the system does not perceive as a biological agent exercising volition, is not my intended way of operating Four Mountains. As a theological observation, it also seems like God does not usually like to alter reality this way.

Patterns are JavaScript objects that have one or more process as an attribute.

It makes sense to speak of "the value of an inorganic pattern" without specifying any attributes that distinguish said pattern from an object. But from a programming viewpoint there is no reason to model such a pattern as a pattern if we don't need other attributes than its value. We would only model an inorganic object but not an inorganic pattern.

We'd model a pattern when we need to model a process and some AMOQ objects together, that is, probably as constituents of some relation. And that pattern would be a social pattern if the process would only involve constructing new social "objects", such as groups of persons, from existing objects without relying on any objects that have already been constructed in this manner. But these social "objects" are only JavaScript objects. They are not AMOQ objects but processes, because a programmer is not expected to be able to check that code written for them works correctly without assuming that the code written for AMOQ objects works correctly. However, the code written for AMOQ objects could work correctly even if the code written for modeling social processes wouldn't. Some mistakes in the former would be tolerated but any single mistake in the handling of object data would probably cause several mistakes in handling process data.

Instead of a social process we may also model an intellectual process. An intellectual process does not necessarily have lower-level attributes in the model if they are not yet implemented or deemed redundant by the programmer, but metaphysically it should have them because the higher levels emerge from the lower levels.

If a process involves another process, or data generated by another process, then said process is intellectual. As part of an intellectual process, a social process may rely on another social process. The layman might call that "diplomacy" or "politics" because, for him, it would mean managing social processes in an intellectually justified manner. At least that's considered the purpose of politics.

Not all intellectual processes need to be explicitly created by some code written specifically for the purpose of creating that particular process for those particular objects or processes. Decision algorithms do not necessarily access object data in a way a programmer would need to specifically code into Four Mountains in order to have the program perform the access.

As an intellectual process, a decision algorithm gains value whenever someone uses it to make a decision. This is what I expect to be its primary way of accumulating value. Because this primary value accumulation method so much stands out from the rest, we may expect social considerations to be irrelevant when constructing this aspect of the model. Metaphysically, every biological person may be thought of as a social process of one person, but there seems to be no reason to write any code for that. And social processes any larger than that don't need modeling as long as we assume everyone decides for himsef. Such an assumption doesn't prevent the modeling of a highly collective and altruistic culture, but it also allows for an individualistic and competitive culture, because the currently existing "decision algorithms" only take grid slot value into account although they could be more sophisticated.

It is also possible to imagine alternative value accumulation methods for decision algorithms. For example, perhaps value should also accumulate when someone else sees someone use a certain algorithm to make a decision, but this would be affected by a factor of how sure is he about the other person having used exactly that decision algorithm. Furthermore, evaluating exactly that aspect of another person's behavior might be assigned a low priority in a more sophisticted model that would have to omit some calculations for performance or simplicity.

Also advertisers and teachers could try to associate other kinds of secondary values to a decision algorithm if such persons were modeled within the system along with the algorithm. But its primary value accumulation method does not need any code at all in order to be performed by the program, because a simple implementation of decision algorithms would trivially include the set of biological objects of the system that could use that algorithm. It would include no other objects. But these biological objects are already cycled by the code that changes turns, even though that code was not written for evading the need to write such code separately for evaluating these decision algorithms as intellectual processes.

This code, that did not need to be written separately from what was written, would have evaluated the biological objects in terms of how much do they accumulate value for the decision algorithm. In this sense each evaluation of a biological object in terms of worth to a decision algorithm is a value of a biological pattern, not a value of a biological object. All other intellectual processes also accumulate value in this manner but most of them would seem to primarily or essentially also accumulate value in some other manner that makes them patterns instead of processes. Therefore the value accumulation of decision algorithms is easier to explain than that of any other intellectual process or pattern I can fathom that feels essentially intellectual instead of a mere intellectualization of a simpler thing.

Metaphysical Aspects of Patterns

From a metaphysical viewpoint, decision algorithms as processes appear to include also other kind of objects than biological objects. For example, a metaphysical definition of a decision algorithm may include axioms of arithmetic that would affect what kind of absolute slot values could appear in the AMOQ grid used by the decision algorithm. Axioms of arithmetic would define numbers in such a way that an analytic philosopher might call numbers objects of the arithmetic defined by those axioms. But this would contradict the SODV notion of objecthood that is also used in the current work-in-progress version of Four Mountains.

Pirsig is not a mathematician but numbers are objects for the mathematician. The analytical metaphysician would understand mathematics so he would insist that Four Mountains structures data in an objective manner, which entails that numbers must be considered intellectual. But the programmer would understand that he doesn't need to write code for numbers before Four Mountains is sophisticated enough to model numbers as intellectual processes or patterns. And a person who could combine the insights of the programmer and the metaphysician could tell the mathematician that modeling numbers as metaphysical objects should be much more convenient if the data about them is structured in a normative manner, which is not next on the to-do list. Before it's time for that, may JavaScript model all there is to numbers that we might wish to model.

Decision algorithms do accept numbers as input and a mathematician would think of numbers as objects. But as long as these objects are modeled solely by JavaScript a programmer may produce a working model by treating "a decision algorithm" as "an intellectual process that does not access object data" and he wouldn't necessarily need to be aware of doing so in order to do it.

We may also speak of metapatterns in order to refer to patterns that consist of at least one relation between at least two (even if unspecified) patterns. In Four Mountains user interface the default solution, given the current means, is however to express them, too, as intellectual processes or patterns. This way we have at least made sure we have a method for generating a table for every type of object, process and pattern we have defined. The data in each table would consist of values and attributes. Values would be Val objects or "PVal objects" and attributes something else than "a Val or PVal object interpreted as the value of its object, process or pattern". As mentioned before, Val objects are not a subset of AMOQ objects, but neither are PVal objects. The value of a pattern should be modeled as a PVal object instead of Val object. A PVal is a JavaScript object with four attributes, one for each level, so that the value of each is a Val object.

The Object-Process Duality

From a data structuring viewpoint this would remain a pretty empiricistic/objective/Pirsigian way of constructing an Artificial Intelligence even though AMOQ suggests that there are three other yet-unmodeled ways to create a useful parallel model with different underlying metaphysical assumptions. However, the already constructed model may be used as a foundation for a parallel model and they should be expected to work together in some way.

Owing to these results we no longer need to conflate the notions of value, pattern and quality, or try to explicate the difference between "objectivity" and "object", and "subjectivity" and "subject", until the futility of their apparent similarity makes us ache. Instead we may form a taxonomy of values.

"Value" refers to a Val or a PVal object as the value of a pattern, object or process/subject. Val objects can be generated by the relVal function that accepts an X coordinate and a Y coordinate as arguments. The function first generates an AMOQ-absolute value that is an integer that is either positive or negative if non-zero. Then it assigns that integer as an attribute of a Val object according to the signs of the coordinates. These signs determine the quality of the Val object in a way that is unambiguously but not explicitly expressed in the written code.

Not any JavaScript object that is a Val object is the value of its AMOQ object. In the current model each JavaScript object has at most one AMOQ value, even though a programmer would call the JavaScript value of any attribute a "value". The name of this value attribute is "val", ie. thisObject.val is the value of thisObject. But even though thisObject.bens[0] is also a Val object it's not the value of it's object. Instead it's the value of its object for the first person in the array of persons that is the state of the Four Mountains artificial intelligence.

Pirsig maybe didn't make very many mistakes. It's puzzling he got anything right if his initial definitions were as vague as they obviously are.

At this point we are finally metaphysically equipped to speak of patterns as members of a level without conflating them with objects of that level. Upon doing so we would divide patterns into four categories according to what is the level of their highest first-order (ie. prior to the construction of the pattern) instance so that the pattern also manifests on each lower level. At least, in theory.

In practice, the programmer would observe that we currently define decision algorithms as intellectual processes but we model them in a way that does not conform to the metaphysical definition in the above paragraph. Instead of conforming to that definition, decision algorithms are the only intellectual processes modeled by the current version, and they have no manifestations on any lower level. Then the metaphysician would have to explain that this is because their social and biological attributes happen to already be modeled by code that was written to perform a different function. Their inorganic attributes are currently not modeled at all, and neither are those of biological values or social processes, but they should be. That is to say, if you made a book with a very important message, you could bestow some additional worth to that message by binding that book in golden covers. The effect of such a boost might be relatively insignificant but it would count, and upon completion this model would explain exactly how much, among other things.

See also