One way to prove this is by using Pythagorean theorem.
Let's label the coordinates of point of the intersection of the two perpendicular lines as `(x_0, y_0)` . Then, since the lines are perpendicular, if we pick any point on the first line with the coordinates `(x_1, y_1)` , and a point on the second line with the coordinates `(x_2, y_2)` , the line segments connecting these three points will form a right triangle, with the right angle at the point `(x_0, y_0)` .
The lengths of the sides of a right triangle must obey Pythagorean theorem. So, for our right triangle, the hypotenuse is the segment connecting points 1 and 2 an it has the length
`d_(12)^2 =(x_2-x_1)^2 + (y_2-y_1)^2`
The other sides' lengths are the distances between the point of the intersection of the two lines and points 1 and 2, respectively. They are equal
`d_(10)^2 = (x_1-x_0)^2 + (y_1-y_0)^2` and
`d_(20)^2 = (x_2-x_0)^2+(y_2-y_0)^2`
According to Pythagorean Theorem, `d_(10)^2 + d_(20)^2 = d_(12)^2` . If we now plug in the expressions for the d's in terms of the coordinates x and y, then by doing a lot of algebra, we can show that the resultant equation will lead to the required relationship between the slopes.
First, rewrite the equation above as
`d_(10)^2 - d_(12)^2 + d_(20)^2 = 0`
For now, I will work with the part of the equation that involves x-coordinates only, because the part involving y-coordinates will be identical.
The part involving x-coordinates is
`(x_1-x_0)^2 -(x_2-x_1)^2 + (x_2-x_0)^2 `
The first two terms make up a difference of two squares and can be factored as such:
`[(x_1-x_0)-(x_2-x_1)]*[(x_1-x_0)+(x_2-x_1)]+(x_2-x_0)^2`
Opening parenthesis and combining like terms in square brackets, we get:
`(2x_1-x_0-x_2)(x_2-x_0) +(x_2-x_0)^2`
Notice that these two terms have a common binomial factor, which can be factored out:
`(x_2-x_0)(2x_1-x_0-x_2+x_2-x_0) = (x_2-x_0)(2x_1-2x_0)` , or
`2(x_2-x_0)(x_1-x_0)`
Again, working with the y-coordinates will yield identical result, so the equation of Pythagorean Theorem will become
`2(x_2-x_0)(x_1-x_0)+2(y_2-y_0)(y_1-y_0) = 0`
The factor of 2 can be canceled, and now we can separate the coordinates:
`(y_2-y_0)(y_1-y_0) = -(x_2-x_0)(x_1-x_0)`
Divide both sides by `(x_2-x_0)(y_1-y_0)` :
`(y_2-y_0)/(x_2-x_0) = -(x_1-x_0)/(y_1-y_0)`
We can recognize that the left side is the slope of the line passing through the points with the coordinates `(x_0, y_0)` and `(x_2, y_2)` (let's call it `m_2` ), and the right side is the negative reciprocal of the slope of the line passing through the points with the coordinates `(x_0,y_0)` and `(x_1, y_1)` (call it `m_1` ). So what we get is
`m_2 = -1/m_1` , which can also be written as `m_1*m_2 = -1`
The product of the slopes of the two perpendicular lines is -1.