In topology, a branch of mathematics, two continuous functions from one topological space to another are called **homotopic** (from Ancient Greek: ὁμός *homós* "same, similar" and τόπος *tópos* "place") if one can be "continuously deformed" into the other, such a deformation being called a **homotopy** (/həˈmɒtəpiː/,^{[1]} *hə-MO-tə-pee*; /ˈhoʊmoʊˌtoʊpiː/,^{[2]} *HOH-moh-toh-pee*) between the two functions. A notable use of homotopy is the definition of homotopy groups and cohomotopy groups, important invariants in algebraic topology.^{[3]}

In practice, there are technical difficulties in using homotopies with certain spaces. Algebraic topologists work with compactly generated spaces, CW complexes, or spectra.

Formally, a homotopy between two continuous functions *f* and *g* from a
topological space *X* to a topological space *Y* is defined to be a continuous function from the product of the space *X* with the unit interval [0, 1] to *Y* such that and for all .

If we think of the second parameter of *H* as time then *H* describes a *continuous deformation* of *f* into *g*: at time 0 we have the function *f* and at time 1 we have the function *g*. We can also think of the second parameter as a "slider control" that allows us to smoothly transition from *f* to *g* as the slider moves from 0 to 1, and vice versa.

An alternative notation is to say that a homotopy between two continuous functions is a family of continuous functions for such that and , and the map is continuous from to . The two versions coincide by setting . It is not sufficient to require each map to be continuous.^{[4]}

The animation that is looped above right provides an example of a homotopy between two embeddings, *f* and *g*, of the torus into *R*^{3}. *X* is the torus, *Y* is *R*^{3}, *f* is some continuous function from the torus to *R*^{3} that takes the torus to the embedded surface-of-a-doughnut shape with which the animation starts; *g* is some continuous function that takes the torus to the embedded surface-of-a-coffee-mug shape. The animation shows the image of *h*_{t}(X) as a function of the parameter *t*, where *t* varies with time from 0 to 1 over each cycle of the animation loop. It pauses, then shows the image as *t* varies back from 1 to 0, pauses, and repeats this cycle.

Continuous functions *f* and *g* are said to be homotopic if and only if there is a homotopy *H* taking *f* to *g* as described above. Being homotopic is an equivalence relation on the set of all continuous functions from *X* to *Y*.
This homotopy relation is compatible with function composition in the following sense: if *f*_{1}, *g*_{1} : *X* → *Y* are homotopic, and *f*_{2}, *g*_{2} : *Y* → *Z* are homotopic, then their compositions *f*_{2} ∘ *f*_{1} and *g*_{2} ∘ *g*_{1} : *X* → *Z* are also homotopic.

- If are given by and , then the map given by is a homotopy between them.
- More generally, if is a convex subset of Euclidean space and are paths with the same endpoints, then there is a
**linear homotopy**^{[5]}(or**straight-line homotopy**) given by - Let be the identity function on the unit
*n*-disk; i.e. the set . Let be the constant function which sends every point to the origin. Then the following is a homotopy between them:

Given two topological spaces *X* and *Y*, a **homotopy equivalence** between *X* and *Y* is a pair of continuous maps *f* : *X* → *Y* and *g* : *Y* → *X*, such that *g* ∘ *f* is homotopic to the identity map id_{X} and *f* ∘ *g* is homotopic to id_{Y}. If such a pair exists, then *X* and *Y* are said to be **homotopy equivalent**, or of the same **homotopy type**. Intuitively, two spaces *X* and *Y* are homotopy equivalent if they can be transformed into one another by bending, shrinking and expanding operations. Spaces that are homotopy-equivalent to a point are called contractible.

A homeomorphism is a special case of a homotopy equivalence, in which *g* ∘ *f* is equal to the identity map id_{X} (not only homotopic to it), and *f* ∘ *g* is equal to id_{Y}.^{[6]}^{: 0:53:00 } Therefore, if X and Y are homeomorphic then they are homotopy-equivalent, but the opposite is not true. Some examples:

- A solid disk is homotopy-equivalent to a single point, since you can deform the disk along radial lines continuously to a single point. However, they are not homeomorphic, since there is no bijection between them (since one is an infinite set, while the other is finite).
- The Möbius strip and an untwisted (closed) strip are homotopy equivalent, since you can deform both strips continuously to a circle. But they are not homeomorphic.

- The first example of a homotopy equivalence is with a point, denoted . The part that needs to be checked is the existence of a homotopy between and , the projection of onto the origin. This can be described as .
- There is a homotopy equivalence between (the 1-sphere) and .
- More generally, .

- Any fiber bundle with fibers homotopy equivalent to a point has homotopy equivalent total and base spaces. This generalizes the previous two examples since is a fiber bundle with fiber .
- Every vector bundle is a fiber bundle with a fiber homotopy equivalent to a point.
- for any , by writing as the total space of the fiber bundle , then applying the homotopy equivalences above.
- If a subcomplex of a CW complex is contractible, then the quotient space is homotopy equivalent to .
^{[7]} - A deformation retraction is a homotopy equivalence.

A function is said to be **null-homotopic** if it is homotopic to a constant function. (The homotopy from to a constant function is then sometimes called a **null-homotopy**.) For example, a map from the unit circle to any space is null-homotopic precisely when it can be continuously extended to a map from the unit disk to that agrees with on the boundary.

It follows from these definitions that a space is contractible if and only if the identity map from to itself—which is always a homotopy equivalence—is null-homotopic.

Homotopy equivalence is important because in algebraic topology many concepts are **homotopy invariant**, that is, they respect the relation of homotopy equivalence. For example, if *X* and *Y* are homotopy equivalent spaces, then:

*X*is path-connected if and only if*Y*is.*X*is simply connected if and only if*Y*is.- The (singular) homology and cohomology groups of
*X*and*Y*are isomorphic. - If
*X*and*Y*are path-connected, then the fundamental groups of*X*and*Y*are isomorphic, and so are the higher homotopy groups. (Without the path-connectedness assumption, one has π_{1}(*X*,*x*_{0}) isomorphic to π_{1}(*Y*,*f*(*x*_{0})) where*f*:*X*→*Y*is a homotopy equivalence and*x*_{0}∈*X*.)

An example of an algebraic invariant of topological spaces which is not homotopy-invariant is compactly supported homology (which is, roughly speaking, the homology of the compactification, and compactification is not homotopy-invariant).

In order to define the fundamental group, one needs the notion of **homotopy relative to a subspace**. These are homotopies which keep the elements of the subspace fixed. Formally: if *f* and *g* are continuous maps from *X* to *Y* and *K* is a subset of *X*, then we say that *f* and *g* are homotopic relative to *K* if there exists a homotopy *H* : *X* × [0, 1] → *Y* between *f* and *g* such that *H*(*k*, *t*) = *f*(*k*) = *g*(*k*) for all *k* ∈ *K* and *t* ∈ [0, 1]. Also, if *g* is a retraction from *X* to *K* and *f* is the identity map, this is known as a strong deformation retract of *X* to *K*.
When *K* is a point, the term **pointed homotopy** is used.

When two given continuous functions *f* and *g* from the topological space *X* to the topological space *Y* are embeddings, one can ask whether they can be connected 'through embeddings'. This gives rise to the concept of **isotopy**, which is a homotopy, *H*, in the notation used before, such that for each fixed *t*, *H*(*x*, *t*) gives an embedding.^{[8]}

A related, but different, concept is that of ambient isotopy.

Requiring that two embeddings be isotopic is a stronger requirement than that they be homotopic. For example, the map from the interval [−1, 1] into the real numbers defined by *f*(*x*) = −*x* is *not* isotopic to the identity *g*(*x*) = *x*. Any homotopy from *f* to the identity would have to exchange the endpoints, which would mean that they would have to 'pass through' each other. Moreover, *f* has changed the orientation of the interval and *g* has not, which is impossible under an isotopy. However, the maps are homotopic; one homotopy from *f* to the identity is *H*: [−1, 1] × [0, 1] → [−1, 1] given by *H*(*x*, *y*) = 2*yx* − *x*.

Two homeomorphisms (which are special cases of embeddings) of the unit ball which agree on the boundary can be shown to be isotopic using Alexander's trick. For this reason, the map of the unit disc in **R**^{2} defined by *f*(*x*, *y*) = (−*x*, −*y*) is isotopic to a 180-degree rotation around the origin, and so the identity map and *f* are isotopic because they can be connected by rotations.

In geometric topology—for example in knot theory—the idea of isotopy is used to construct equivalence relations. For example, when should two knots be considered the same? We take two knots, *K*_{1} and *K*_{2}, in three-dimensional space. A knot is an embedding of a one-dimensional space, the "loop of string" (or the circle), into this space, and this embedding gives a homeomorphism between the circle and its image in the embedding space. The intuitive idea behind the notion of knot equivalence is that one can *deform* one embedding to another through a path of embeddings: a continuous function starting at *t* = 0 giving the *K*_{1} embedding, ending at *t* = 1 giving the *K*_{2} embedding, with all intermediate values corresponding to embeddings. This corresponds to the definition of isotopy. An ambient isotopy, studied in this context, is an isotopy of the larger space, considered in light of its action on the embedded submanifold. Knots *K*_{1} and *K*_{2} are considered equivalent when there is an ambient isotopy which moves *K*_{1} to *K*_{2}. This is the appropriate definition in the topological category.

Similar language is used for the equivalent concept in contexts where one has a stronger notion of equivalence. For example, a path between two smooth embeddings is a **smooth isotopy**.

On a Lorentzian manifold, certain curves are distinguished as timelike (representing something that only goes forwards, not backwards, in time, in every local frame). A timelike homotopy between two timelike curves is a homotopy such that the curve remains timelike during the continuous transformation from one curve to another. No closed timelike curve (CTC) on a Lorentzian manifold is timelike homotopic to a point (that is, null timelike homotopic); such a manifold is therefore said to be multiply connected by timelike curves. A manifold such as the 3-sphere can be simply connected (by any type of curve), and yet be timelike multiply connected.^{[9]}

Main article: Homotopy lifting property |

If we have a homotopy *H* : *X* × [0,1] → *Y* and a cover *p* : *Y* → *Y* and we are given a map *h*_{0} : *X* → *Y* such that *H*_{0} = *p* ○ *h*_{0} (*h*_{0} is called a lift of *h*_{0}), then we can lift all *H* to a map *H* : *X* × [0, 1] → *Y* such that *p* ○ *H* = *H*. The homotopy lifting property is used to characterize fibrations.

Another useful property involving homotopy is the homotopy extension property, which characterizes the extension of a homotopy between two functions from a subset of some set to the set itself. It is useful when dealing with cofibrations.

Main article: Homotopy group |

Since the relation of two functions being homotopic relative to a subspace is an equivalence relation, we can look at the equivalence classes of maps between a fixed *X* and *Y*. If we fix , the unit interval [0, 1] crossed with itself *n* times, and we take its boundary as a subspace, then the equivalence classes form a group, denoted , where is in the image of the subspace .

We can define the action of one equivalence class on another, and so we get a group. These groups are called the homotopy groups. In the case , it is also called the fundamental group.

Main article: Homotopy category |

The idea of homotopy can be turned into a formal category of category theory. The **homotopy category** is the category whose objects are topological spaces, and whose morphisms are homotopy equivalence classes of continuous maps. Two topological spaces *X* and *Y* are isomorphic in this category if and only if they are homotopy-equivalent. Then a functor on the category of topological spaces is homotopy invariant if it can be expressed as a functor on the homotopy category.

For example, homology groups are a *functorial* homotopy invariant: this means that if *f* and *g* from *X* to *Y* are homotopic, then the group homomorphisms induced by *f* and *g* on the level of homology groups are the same: H_{n}(*f*) = H_{n}(*g*) : H_{n}(*X*) → H_{n}(*Y*) for all *n*. Likewise, if *X* and *Y* are in addition path connected, and the homotopy between *f* and *g* is pointed, then the group homomorphisms induced by *f* and *g* on the level of homotopy groups are also the same: π_{n}(*f*) = π_{n}(*g*) : π_{n}(*X*) → π_{n}(*Y*).

Based on the concept of the homotopy, computation methods for algebraic and differential equations have been developed. The methods for algebraic equations include the homotopy continuation method^{[10]} and the continuation method (see numerical continuation). The methods for differential equations include the homotopy analysis method.

Homotopy theory can be used as a foundation for homology theory: one can represent a cohomology functor on a space *X* by mappings of *X* into an appropriate fixed space, up to homotopy equivalence. For example, for any abelian group *G*, and any based CW-complex *X*, the set of based homotopy classes of based maps from *X* to the Eilenberg–MacLane space is in natural bijection with the *n*-th singular cohomology group of the space *X*. One says that the omega-spectrum of Eilenberg-MacLane spaces are representing spaces for singular cohomology with coefficients in *G*.