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.

Sunday, April 21, 2019

Proof

I think I have another way to prove that every linear symbolic space is constructible as a numeric space. It is by induction on number of boundaries, and assumes a numeric cospace is constructible from a numeric space. By classification of the numeric cospace, the symbolic space has a symbolic cospace. To complete the proof I must prove every section of the symbolic space is a region in the symbolic cospace. Using a perspective, sections have sidedness wrt vertices. Consider a section of the symbolic space. I must show the section’s region in the cospace is not empty. Choose a point in the numeric cospace corresponding to a region in the symbolic cospace, a numeric, and a symbolic boundary in the space. Move the point across attached boundaries matching to section sidedness wrt vertices in the space. In some region of the cospace, the considered section is the same as the moved boundary wrt space vertices of attached cospace boundaries. Assume for contradiction that the point differs from the considered section wrt some vertex, called the contradiction vertex. In the cospace, choose a perspective that puts the contradiction boundary and an attached boundary on the same side of the attached region. That perspective in the space puts the contradiction vertex and a vertex attached to a region, in the considered section, divided by the moving boundary, on the same side of the considered section and moving boundary. This contradiction completes the proof.

Tuesday, February 5, 2019

Graphics

I wanted to eliminate my geometry shader so I could brag that my microcode runs fast, but I also wanted to show off my facets. The idea of decorating facets with pictures gave me an aha when I realized it would make rotation about the normal more useful. But for some time I could not figure out how to feed texture coordinates to the vertex shader. Note that duplicating the points was unacceptable to me, not because of memory constraints, but for aesthetic reasons; duplicating points violates topological reality. Since limiting planes to have at most one facet is acceptable to me, disallowing kissing vertices is ok, and facets separate polytope regions from non-polytope regions, I can limit vertices to have at most 3 facets in 3 dimensions. Then the challenge was to get the vertex shader to choose the correct texture color, texture weights, and texture coordinates. I wondered if each facet could be assigned a tag valid for all of its vertices. All the vertex shader need do is lookup its texture vectors by a uniform tag. Assigning a tag to each facet is a graph coloring problem. Using a greedy algorithm, no more than n+1 graph colors are needed, where n is the maximum degree of the graph nodes. Here, graph nodes are polytope facets, graph connections are shared polytope vertices, and graph colors are facet tags. A facet can have any number of vertices, but in 3 dimensions, it can be decomposed into 3 vertex facets. Modify the greedy algorithm to assign the same tag to facets in the same decomposition. Triangle facets have 6 vertex sharing neighbors, so 7 tags are needed. Thus each vertex needs 3 texture vectors, and the tag uniform needs to be changed 7 times.

Monday, February 4, 2019

Minimalism

There are several kinds and fields of minimalism. I know enough art theory and history to claim ignorance about art minimalism. Minimalism with a capital M has come to mean small houses or few possessions. But small and few are poorly defined; say small or few to a mathematician, I dare you. Minimalism in software language means Lua and such. Minimalism in software design means user interfaces like double dash files that melt the distinctions between automation, configuration, and interaction. Minimalism in backpacking can mean ultra-light and/or general purpose. Backpacking mores can be applied to behavior in general. Leave only footprints and take only pictures translates to minimize your carbon footprint and respect indigenous priority. Does one opt for high tech or tried and tested. Does one prefer expert approved or do it yourself. Does one keep a clean living space or minimize the amount of manintenance. Does one emulate a storage, workshop, or ship? Engineers claim to admire simplicity, but each interprets the word differently. Some lean towards architecture, and adopt descriptive identifiers and formulaic comments. I lean away from architecture, and opt for shorter identifiers, fewer lines of code, and imaginative comments. I take a similar approach to society. Corporate life is a bath of deception and secrecy. The claimed merit is productivity, but in practice that means toeing the line. Methodology claims to enhance reuse, but actually just makes marketing easier by reducing innovation. Similar dynamics occur in other hierarchical parts of society. Trickle down economics claims to raise all boats, but actually just crams more sardines into the same can.

Sunday, January 27, 2019

Double Dash

I've become disillusioned. Open source is ugly; IDEs are ugly; big data is ugly. The only UI that brings me joy is my double-dash syntax. Only files are a way to communicate to a command line program that reads files with .-- extensions. If you want to change the mode that the program is running in, then you have to append to a .-- file that was given to the program at invocation. Every -- in a .-- file starts a command, no matter where it occurs. If a -- occurs before a command gets all the arguments it expects, then the interrupted command fails. Anything not matching the argument format is ignored. Stop trying to make computers more like people. Just find a common denominator. One command opens one window. Multiple instances of that command can share, or own, files given to the command on its command line. Only files are given on a command's command line; command line arguments that are not files are ignored. Obviously, simultaneous commands can share files, so I do need pthreads to read files as they are appended to. No other overhead is necessary. Everything else is innovation. Stop reinventing the wheel. No matter how profitable reinvention is, and how unprofitable true invention is, just express.

Monday, January 14, 2019

Innovation

Innovation is not a football in the battle between libertarian and socialist. Innovation is the field. Let’s give libertarians some intellectual credit, and assume they know that what socialists refer to as innovation comes from government and universities. Libertarians have as many words for profit as escimoes have for snow, and to a libertarian, innovation is a form of profit. They may quibble that innovation is a source of profit, but just as snow is a source of ice, it is all profit to a libertarian. When libertarians argue for less government, they are arguing for less of what socialists call innovation. Both libertarians and socialists have a point. Government gave us fracking as well as internet. Big government is imperialist, because building up alternatives before tearing down traditions accumulates advantage. Let the ideologues argue over more or less; the future is what kind. Until government stops being timid and greedy, and starts destroying as well as feeding corporations, we will stay on the current track to climate breakdown.