Wednesday, February 5, 2014

Wednesday: topology

The was a department wide email sent around today about a new flash bug that requires a browser upgrade to fix.  Sure.  Sounds easy enough.  Then I discovered that my work computer OS was sufficiently out of date that it didn't support a new version of chrome.  Then I tried to upgrade, but my OS was sufficiently out of date that there was no longer a way to upgrade it.  And when you try, it breaks everything by uninstalling things you like.  Like tex.  And octave.  And gcc.

So, go out, buy a flash stick (16GB because they're sold out of 8GB, since no one transfers more than 8GB by hand anymore), get the install ISO, do the install, have it fail because the fucking install ISO isn't constructed correctly to install without a network connection to fix the problems, figure out how my work computer is connected to the internet, try again with an active network connection (allowing me to browse the internet while it does so), reboot to mostly functional new install.

Great.  The upgrade also allowed me to switch from shitty shit gnome to enlightenment, because it's clearly better.  Here is where we get to the topic of the day.

Topology is not my best math.  Sure, I solved the bridges of Koningsberg problem in high school as you do, and I can feign a laugh at the doughnut/coffee cup trick that isn't decades old and seriously come up with a new joke already, and I realized what the shape of the Space War universe was while playing the game on an Atari 2600 with no sun and no bouncing (also: old video games always had kick ass covers).

Why are we talking about topology?  In E17, I like to have a number of virtual desktops, and I like them to be all connected to each other so I can flip between them by pushing on the edge of the screen.  FVWM did this years ago, and I always liked the idea.  E17 also supports wrapping of virtual desktops, so you end up with something like this:

My laptop uses a three by three grid, but it's the same thing.
Where there is a two-by-two grid of desktops, each connected to the others along wrapped edges.  This is obviously identical to the SpaceWar universe, as you can imagine this as just a really crappy tv with only four pixels.  Therefore, my standard desktop arrangement is homeomorphic with a torus.  Easy peasy.

Now, at work, I have a dual monitor setup, and I assumed this would just work the same, but with fat desktops.  However, I discovered upon getting everything configured that it's actually this far more complicated thing:
Green arrows are bidirectional, as they were above.  Orange are unidirectional.
The two monitors have their own set of virtual desktops, but, since going across the monitor boundary must put you on the other monitor, they're not connected together.  If you're on the left monitor, there is no right edge you can cross to get to left side of the adjacent desktop (imagine the center red screen to pink).  You can get there by going to the unopposed left edge of this desktop to arrive on the right edge of that desktop, but you then can't go back, as you jump over to the other monitor.

I don't have proof (again, see "worst math"), but I believe this defines a very oddly connected hollow torus.  I don't know how you construct a unidirectional connection in topology, but assuming that's valid, you basically have some sorted of ratcheted torus for each monitor: you can travel poloidally unobstructed (corresponding to vertical shifts), but can only travel in one direction toroidally.  Switching between monitors is then functionally equivalent to passing through the ratchet onto the other side of the torus.  There's some ambiguity, since you can then shift each monitor separately, so where you come out on the other side of the torus isn't a priori obvious, but I think the bulk of the thing is sorted.

Anyway, I thought it was cool, and now my already-confusing-to-other-people desktop is going to get more confusing.


No comments:

Post a Comment