Sunday, July 21, 2019

Topological Unsort

To implement program with multiple languages, the languages must communicate. C is an interface language; most other languages have a C interface. We organize data in C programs with struct and union. To communicate between C and other languages data is converted to and from struct/union. Threads and processes send messages, each of which is a different struct/union. Most languages are more powerful than C, so they can restrict portions of their data organization to conform to C struct/union. When there are many different struct/union types to send, it can become arduous to change the corresponding data types in each language. Preferably, a script would automatically generate the struct/union types in each language. Each field of a struct/union can be a pointer to one or more other contiguous struct/union instances, an array, a basic type, an enumeration type, or a string. Each field can have validity dependent on other fields, called tags. Think of the tags as dimensions; tag values are a tag space. Each field is valid in a subset of the tag space. C is limited in that without an unwieldy number of identifiers, struct/union can not have a unique representation for every point in the tag space. Instead, consecutive fields should have similar tag space subsets. My script to generate struct/union types in several languages, takes as input lists of fields, each with a tag space subset. Consecutive fields or unions with equal tag space subsets collect into structs. Consecutive fields or structs with disjoint tag space subsets collect into unions. A tag space subset opens a union. A tag space superset closes structs and unions. A topological sort of the graph is the original list of fields.

State File Sets

It is common for an application to have state that persists between invocations. It is limiting to think of an application or its state in the singular. It is confusing for an application’s state to be hidden or unreadable. Instead, go with the Unix concepts of text files and processes, such that the processes state is completely determined by the content of text files given to it at invocation. At any one time, there can be multiple instances of an application, running in parallel. As a process’ state changes, the changes are captured by one or another of the text files given to it at invocation. Two processes with the same given text files would be in the same state.

Friday, May 17, 2019

Synergetics

I’m not convinced RBF would have designed domes the way they are commonly designed. Usually, they are designed to minimize the number of piece sizes, and to minimize the thickness of the dome surface. In contrast, RBF disparaged not only cartesian coordinates, but also classical emphasis upon regularity. Classical regularity is great (group theory is all about regularity), but I find irregularity easier to design. Simply choose random planes, and make a dome from the facets between the inside and outside of the space. Such a dome would have a thick surface in which humans could live, leaving the inside of the dome for plants and animals.

Sunday, May 5, 2019

Cospace

Every region in a roundspace has an opposite and is not peripheral. Producing a roundspace from a space is easy, and results in boundaries through a center point. The boundaries through the center point map to points on a section plane in the cospace. Sections of the roundspace are great circles formed by planes through the center point. Vertices in the roundspace have diameters through the center which map to subvertices in the cospace section. The cospace section has boundaries mapped to vertices in the roundspace. By adding an equator plane to the roundspace, the cospace section has one region per roundspace section. The cospace section has peripheral regions. Thus depending on roundspace rotation, there are special sections in the space, corresponding to peripheral regions in the cospace section.

Thursday, May 2, 2019

Humanity

I’m curious what thoughts others would have while reading Kathryn Yusoff. Whites were the ones that killed the Neanderthals. Other races killed species, but were not killed by species. The survivors of the battle with Neanderthals were the most ruthless ones. Thus, whites built castles to lord it over peasants. Thus whites built ships to lord it over nonwhites. Thus whites built mines to lord it over nonhumans. Thus whites built corporations to lord it over nonvalues. Conservative character building is not enough. Liberal supplication (case in point) is not enough. To break the wheel, the dragon queen needs nonwhite values, nonwhite grades, nonwhite supporters, nonwhite language, nonwhite identity, nonwhite vitality, nonwhite technology, and nonwhite geography.

Thursday, April 25, 2019

Perspective

A perspective is a maximal set of paths through a focal region, such that each path crosses each boundary once and only once.

Because paths cross boundaries only once, regions and vertices after the boundary all have the same sidedness wrt the boundary. Thus path sidedness is well defined and equivalent to space sidedness.

Sidedness of a boundary wrt a vertex and perspective is whether a path reaches the boundary or one of the vertice’s regions first.

Note that the point of convergence of lines perpendicular to the base in the numeric space is in some particular outside region. Thus, there is a symbolic perspective that makes numeric sidedness wrt vertices equivalent to symbolic sidedness wrt vertices.

Write algorithms to go back and forth between a numeric space and a numeric cospace, with one boundary per vertex, and one boundary per vertex at infinity.

Complete the construction proof by noting that the algorithms do not use the choice function.

Tuesday, April 23, 2019

Accessibility

Definitions:

A sub-vertex is any n or fewer boundaries, where n is the dimension of the space. The boundaries are said to contain the sub-vertex.

A vertex is a sub-vertex, where n boundaries contain the vertex.

A nonempy region and sub-vertex are attached iff there is a nonempty region with sidedness identical to the attached region, except wrt every boundary containing the sub-vertex.

A vertex is on the same side as each of its regions wrt a boundary if the boundary does not contain the vertex.

A vertex is accessible to a boundary dividing a super region iff the vertex can be on either side of the boundary without changing which side of the boundary the super region’s vertices are on.

Theorem:

A vertex is inaccessible iff there is a simplex-super-region by which the vertex is inaccessible to the dividing boundary.

Proof:

If the vertex is inaccessible, adding boundaries will not make it accessible, so on to the only if part.

The entire outside of the given super-region is covered by base and vertex regions of simplex-super-regions, so complete the proof by choosing one the given vertex is in.