In mathematics, a map is often used as a synonym for a function, but may also refer to some generalizations. Originally, this was an abbreviation of mapping, which often refers to the action of applying a function to the elements of its domain. This terminology is not completely fixed, as these terms are generally not formally defined, and can be considered to be jargon. These terms may have originated as a generalization of the process of making a geographical map, which consists of mapping the Earth surface to a sheet of paper.
Maps may either be functions or morphisms, though the terms share some overlap. The term map may be used to distinguish some special types of functions, such as homomorphisms. For example, a linear map is a homomorphism of vector spaces, while the term linear function may have this meaning as well as another one. In category theory, a map may refer to a morphism, which is a generalization of the idea of a function. In some occasions, the term transformation can also be used interchangeably. There are also a few less common uses in logic and graph theory.
In many branches of mathematics, the term map is used to mean a function, sometimes with a specific property of particular importance to that branch. For instance, a "map" is a "continuous function" in topology, a "linear transformation" in linear algebra, etc.
Maps of certain kinds are the subjects of many important theories. These include homomorphisms in abstract algebra, isometries in geometry, operators in analysis and representations in group theory.
A partial map is a partial function. Related terms such as domain, codomain, injective, and continuous can be applied equally to maps and functions, with the same meaning. All these usages can be applied to "maps" as general functions or as functions with special properties.
In the communities surrounding programming languages that treat functions as first-class citizens, a map is often referred to as the binary higher-order function that takes a function f and a list [v0, v1, ..., vn] as arguments and returns [f(v0), f(v1), ..., f(vn)] (where n ≥ 0).