Corrections

2009-08-01

My last post was about the different ways that two lines can relate to each other in Euclidean space. Unfortunately the main point I was trying to make was entirely false, so I’m going to explain why.

The error began when I said that it should be possible to position two lines in 4-dimensional space such that they cannot fit into any 3-dimensional subspace. That’s not true, and so everything I said after that is also false, and the entire post isn’t all that interesting anymore.

The following brief explanation should do fine for anybody with a good understanding of linear algebra:

One line can be defined by naming any two distinct points on the line, and so we can define any two lines by naming two distinct points on each of them. I’m not going to bother distinguishing which two points belong to which line, because I can generally show that given any four points, any two lines passing through two points each will necessarily fit into a 3-dimensional subspace.

Given any four points in N-dimensional space, translate the four points together so that one of them is positioned at the origin. Now we have three points that are not at the origin, which we can consider to be vectors. Define a vector subspace using these three vectors as the basis. Clearly, with a three vector basis, the vector subspace cannot have a dimension higher than three. Now if we have a 3-dimensional space that contains all four points, it must be the case that any line through any two of those points must also be contained in the space (this can be shown more strictly by stating this in terms of basic vector addition and subtraction).

So far we’ve defined a vector subspace for our four translated points (we translated them because a vector subspace must contain the origin). To apply the result to the four original points, we can simply translate the entire subspace using the reverse of the original translation. The resulting space will not be a vector space, since it will not contain the origin (unless of course one of the four points happened to be the origin), but it will nonetheless be a 3-dimensional space, containing the original two lines.

For those without a linear algebra background, this ought to be convincing enough, though not as mathematically rigorous:

No matter the dimension we’re talking about, if we pick any two distinct points, there should be only one line through the two points. So we can define each of our lines with two points, giving us a total of four points. In the same way that two points define a line, three points can define a plane (assuming they aren’t all in a straight line). And in the same way that three points define a plane, four points that don’t already lie on a flat plane will define a specific 3-dimensional space. This isn’t immediately obvious, because we only have three dimensions, so any four points we can imagine can at best define the 3-dimensional space which is the whole of space as we know it. But in any higher dimension this will be more meaningful. So our four points from our two lines define a 3-dimensional space containing them, and if some 3-dimensional space contains the four points, it will also contain any line through any two of them.

It’s not a very difficult thing to see, but I didn’t catch myself until after I had posted it. I need to be more careful with my maths.

Comments

There's some javascript trying to load some comments, and if you're reading this, it's probably not working.

UPDATE: The mathematical content of this post is, as far as I know, original to me, and I posted it shortly after it occurred to me, without thinking through it critically. I later realized that it is entirely false. My next post explains why.

I’ve always enjoyed imagining higher dimensional geometry. Not that it’s easy to visualize, but it’s easy to discern what some of the properties would be. Today I thought of an example of such a property.

Consider the different ways two (infinite) lines can be positioned relative to each other in different dimensions:

  1. Lines can’t exist in 0-dimensional space
  2. Any two lines in 1-dimensional space are necessarily the same line
  3. In 2-dimensional space, two distinct lines can relate to each other in two different ways:
    • They can intersect
    • They can be parallel

  4. In 3-dimensional space, there is a third option:
    • They can intersect
    • They can be parallel (which means they are always the same distance apart)
    • They can be skew (if this one isn’t immediately obvious, imagine a bridge, where one line (the road) goes over the other line (the river), and they neither intersect, nor run parallel)

    The first two options imply that the lines are co-planar: there is some flat (2D) plane containing both of them. In the third option the two lines are necessarily not co-planar.

  5. If we add a 4th dimension, we should expect to be able to distinguish between two different kinds of skew lines:
    • Skew lines that can be contained within the same 3-dimensional sub-space, in the same way that parallel lines can be contained within a 2-dimensional subspace. We can refer to them as Skew3
    • Skew lines that cannot be contained within the same 3-dimensional sub-space, in the same way that Skew3 lines cannot be contained within a 2-dimensional subspace. We can refer to them as Skew4

    Intersecting and parallel lines will both still be possible, of course.

  6. With the 5th dimension too, we should be able to have Skew5 lines, which cannot be contained in the same 4-dimensional subspace.

And up and up, as high as you like. Our fellow beings in some 307-dimensional world probably spend most of their high school geometry class memorizing the 307 different ways that two lines can relate to each other (my favorite is Skew108), and developing their ability to quickly recognize them when projected in a 307-dimensional hologram.

Comments

There's some javascript trying to load some comments, and if you're reading this, it's probably not working.

Confuse-a-compiler

2009-07-29

Apparently compilers can get confused:

Comments

There's some javascript trying to load some comments, and if you're reading this, it's probably not working.

Rant

2009-07-26

Excuse me for a minute while I go on a bit of a rant. I’m tired of all these liberal-wearing hippie-popping gun-toting bigot-eating abortion bankers trying to tell us what color skin we have. If I want the government to stay out of my foreign policy, I won’t get a six-pack of mortgages while I’m at the convenience store! Our president and congress need to spend more money defending our own citizens from external threats, and less money on the military. Take your family-values and go back to the country you illegally came from! The government thinks it can completely ignore the rights of women and force them to endure unwanted marriages that were the result of violent-crime-weddings, all in the name of preserving sanctity or some other hogwash. Well I say, wash those hogs! Get the lipstick off those pigs!

If all those damn front-wing Harvard and Princeton momma’s boys with their fancy schmancy family values and religion think they can run my life, I’ve got just three words for them: The Constitution! This country was founded on the principles of right and wrong, not of black and white. The longer we’ve got a muslim-cowboy fatherless Texan ethnic man in the oval office, the more money this country spends on Medicaid! Do you know why everybody’s so fat? K-mart! If marijuana companies weren’t allowed to advertise to children, drunkenness wouldn’t be so epidemic among all these preschool-dropout droopy-pants-wearing redneck KKK-members blasting their rap music so loud you can’t hear yourself gay-marry!

The Supreme Court (which is behaving more like a fast-food menu item than a judicial body) thinks that it’s ok to judge people by the color of their t-shirts, but I say the Supreme Court can go back to Canada where it came from. If you want to take jobs from honest, hard-working Wall Street con-artists, then you have no place in my America. I wish all these stupid arm-chair bloggers would quit pretending Ronald Reagan was still turning this country into a socialist paradise. When are people going to learn to think for themselves? Do you think the media has your best interests in mind? There are seventy million people in this country who are forced to get their education from Burger King, and if the government can’t fix it, then it’s time for a new government. Get out of my country, NOW!

Comments

There's some javascript trying to load some comments, and if you're reading this, it's probably not working.

Computer Science

2009-07-26

A list of the research interests of all the Computer Science professors at MIT:

  • Computational complexity, quantum computing.
  • Artificial intelligence, scientific computation, educational computing, societal and legal frameworks for information technology.
  • Program analysis and optimization, computer architecture.
  • Architecture synthesis and verification, digital design, term rewriting systems and lambda calculus. Parallel architectures and programming languages.
  • Computer networks, mobile and sensor computing systems, distributed systems.
  • Natural language processing.
  • Natural language processing: computer models of language acquisition and parsing. Computational biology and evolutionary theory including evolution of language. Artificial intelligence: formal models of learning, including inductive inference and computational complexity analysis of language. Cognitive science: word learning, semantics of natural languages.
  • Natural language processing and machine learning.
  • Theory of computation. The interdisciplinary fields of algorithmic game theory, computational biology, social networks and applied probability.
  • Artificial intelligence, intelligent multimodal interfaces and natural interaction; intellectual property issues in software.
  • Algorithms and data structures. Discrete and computational geometry. Combinatorial games.
  • Parallel computer system design to support functional languages and advanced environments for modular programming. Study of architecture, performance and reliability issues.
  • Image generation and creation; realistic rendering, real-time graphics, perceptually-based algorithms, non-photorealistic rendering, image-based rendering and editing, digital photography.
  • Machine learning applied to computer vision and computer graphics. Bayesian belief propagation and its generalizations. Bayesian models of visual perception.
  • Computational and systems biology, computational functional genomics. Expression of scientific models in computational form. Machine learning.
  • Cryptography, pseudo randomness, property testing, computational number theory, multi-party computations.
  • Computer vision, medical image analysis, medical image processing, image guided surgery, activity recognition.
  • Computational imaging, machine vision. Representation of objects and space. Photogrammetry.
  • Computational geometry, especially in high-dimensional spaces; databases and information retrieval; learning theory; design and analysis of algorithms; streaming and sketching algorithms.
  • Statistical inference and machine learning. Applications to computational biology and information retrieval. Artificial intelligence.
  • Software design and specification; design methods, tools and analysis; dependability; safety-critical systems; reverse engineering; static analysis, model checking, programming languages.
  • Computer systems: operating systems, networking, programming languages, compilers, and computer architecture for distributed systems, mobile systems and parallel systems.
  • Behavior learning, visually-guided map learning for mobile robots, planning in very large stochastic domains, learning relational models.
  • Information retrieval and digital libraries; analysis of algorithms, especially for graphs and optimization problems; applications of randomization; parallel algorithms.
  • Computer networks and data communication. Congestion control, network measurements, scalability and robustness of communications systems. Differentiated services, internet pricing, routing, content distribution, self-configurable and wireless networks and network security.
  • Computational biology. Genome interpretation, comparative genomics, regulatory networks, cellular signals, developmental biology, evolutionary theory. Algorithms and machine learning applications in genomics.
  • Computer science. Hardware design and machine architecture through distributed systems and programming languages to user interfaces and office automation.
  • Theory of computing machinery, parallel computation, graph theory, algorithms, computer architecture, supercomputing, multithreading, internet computing, scalable systems, chip multiprocessing, multicare systems.
  • Programming methodology, programming languages, distributed systems, object-oriented databases.
  • Artificial intelligence; robotics and computer vision.
  • Theory of distributed and real-time computing: mathematical models, specification, algorithm and system design, performance and fault-tolerance analysis. Distributed data management, communication, synchronization. Languages and tools for abstract distributed programming. Hybrid (continuous/discrete) systems. Mobile wireless networks.
  • Databases and computer systems; query processing, distributed systems, management of streaming data, adaptive data processing, sensor networking.
  • Software education environments. Semantics of programming languages, logic of programs, concurrent programs, lambda calculus.
  • Cryptography, secure protocols, pseudo-random generation, proof systems, zero knowledge, mechanical design.
  • Human-computer interfaces, intelligent interfaces, programming by demonstration, end-user programming languages, usability, software engineering, usability and security.
  • Artificial intelligence. Robotics and machine vision. Representation of knowledge and structure of personality. Common sense reasoning, theories of emotion and consciousness.
  • The design of an easy-to-control data networking infrastructure designed to bring about a new level of flexibility to network configuration. The Resilient Overlay Networks Project. Grid routing protocols.
  • Organization of large complex systems, artificial intelligence.
  • Program analysis, compilers, distributed computing, software engineering.
  • Cryptography. Computer/network security. Algorithms. Voting technology.
  • Sublinear time algorithms, randomized algorithms, computational complexity theory.
  • Robotics, mobile computing and information access.
  • Programming systems with a focus on software synthesis. Programming tools for parallel and high performance computing.
  • Database systems, query processing, data warehouses, federated databases, data visualization.
  • Complexity of finding ‘approximate’ solutions to combinatorial optimization problems; interplay of algebra with computer science and coding theory.
  • Artificial intelligence: learning, problem solving and programming. Computational performance models for intelligent behavior, especially modeling the behavior of engineers. Numerical models of physical systems.
  • Application of artificial intelligence techniques to medical decision making. Effective representation of knowledge. Personal health information systems, medical confidentiality.
  • Machine learning and robotics, including reinforcement learning, optimal control, legged robots, flapping-wing flight, nonlinear control theory, biological motor control, and computational neuroscience. Particular emphasis on solving difficult robotic control problems through a close coupling of mechanical design and learning control.
  • Autonomous robotics for mobility and manipulation; situational awareness through sensing and inference; location-based infrastructure and applications; assistive technology for health care.
  • Computer vision, machine learning and human perception; development of computer vision systems and solving real world recognition tasks; modeling human perceptual and cognitive capabilities; object recognition, classification of whole scenes; visual recognition and classification of places and objects.
  • Computer architecture and operating systems.
  • Artificial intelligence and computational theories of human intelligence, with special emphasis on the roles of language, vision and analogical reasoning.
  • Building practical secure systems. Operating systems, hardware design, networking, and distributing systems. Programming languages and tools, security analysis and verification.

Comments

There's some javascript trying to load some comments, and if you're reading this, it's probably not working.