A linear real-valued function **ω** of vectors **v** that maps a tangent space **V** onto **R**, i.e. **ω** : **V** → **R**.

Oneforms are a class of differential k-forms and are (0,1) tensors. They may be written in the form ω_{a} in abstract index notation. Oneforms are sometimes called covariant vectors and are dual to vectors, sometimes called contravariant vectors.

The set of all oneforms at a point P on a manifold M is called the cotangent space of M at P, T^{*}_{P}(M), and is the dual space of the tangent space of M at P, T_{P}(M).

Oneforms are therefore linear operators on T_{P}(M) with the following properties:

( a **ω** + b **μ** ) ( **v** ) = a **ω** ( **v** ) + b **μ** ( **v** ), ∀ a, b ∈ **R** and ∀ ω, μ ∈ T^{*}_{P}(M) and ∀ v ∈ T_{P}(M)

**ω** ( a **v** + b **u**) = a **ω** ( **v**) + b **ω** ( **u** ), ∀ a, b ∈ **R** and ∀ ω, ∈ T^{*}_{P}(M) and ∀ v, u ∈ T_{P}(M)

The set T^{*}_{P}(M) of all oneforms at P on a manifold M form a vector space with these properties, just as its dual, the set T_{P}(M) of all vectors at a point P on a manifold M form a vector space.

If we associate vectors with directional derivatives along curves then we can associate oneforms with gradients of functions, providing a natural way for oneforms to act on vectors. For simplicity, assume our manifold M is **R**^{3}. Let Γ(λ) be a smooth curve in M. Let f(M) be some smooth, real-valued function over M. We can then write the directional derivative of f along the curve as:

df/dλ = dx/dλ ∂f/∂x + dy/dλ ∂f/∂y + dz/dλ ∂f/∂z

Now let **v** be an operator on real-valued functions on M, which we identify as the directional derivative operator along the curve Γ. Then **v**(f) = df/dλ, so we can write

**v** = d/dλ = dx/dλ ∂/∂x + dy/dλ ∂/∂y + dz/dλ ∂/∂z.

The terms dx/dλ, dy/dλ, dz/dλ, are the components of the tangent vector of the curve Γ, which is why we can identify vectors with directional derivatives. The vectors **e**_{1} = ∂/∂x, **e**_{2} = ∂/∂y, **e**_{3} = ∂/∂z, form a natural basis for the tangent space and are the directional derivatives along the coordinate curves. For instance, suppose we have a curve Γ parameterized by λ such that Γ : λ → **R**^{3}, e.g. Γ(λ) = {λ,λ^{2}, 1). Then **v** = ∂/∂x + 2 λ ∂/∂y.

Similarily we can associate a oneform with the gradients of some function f, which we write as ∇f or **ω** = **d**f (not to be confused with the differential). Then, by **defining** the action of **ω** = **d**f on **v**, or **ω**(**v**) such that

**d**f(**v**) = **d**f(d/dλ) = df/dλ ,

we can find a natural basis for T

^{*}_{P}(M) in which to write

**ω**. Taking the functions f(M) = x, g(M) = y, and h(M) = z, we form the basis oneforms

**e**^{1} =

**d**x,

**e**^{2} =

**d**y, and

**e**^{3} =

**d**z. We can then write

**d**f = df/dx **d**x + df/dy **d**y + df/dz **d**z.

Notice that the coefficients of **d**x, **d**y, and **d**z are the components of the "normal vector" of the surface f = constant. For this reason, we call **d**f the normal oneform of f. For instance, consider the function f(x,y,z) = x^{2} + y^{2} + z^{2}. Then f(x,y,z) = r^{2} describes a sphere of radius r. The normal form is **d**f = 2x**d**x + 2y**d**y + 2z**d**z in component form.

Since both **v** and **ω** are linear operators, we can write the action of **ω** on **v** as follows:

**ω**(**v**) = **d**f(d/dλ) = ( ∂f/∂x **d**x + ∂f/∂y **d**y + ∂f/∂z **d**z ) ( dx/dλ ∂/∂x + dy/dλ ∂/∂y + dz/dλ ∂/∂z ).

Distributing:

**ω**(**v**) = ( ∂f/∂x **d**x )( dx/dλ ∂/∂x + dy/dλ ∂/∂y + dz/dλ ∂/∂z )

+ ( ∂f/∂y **d**y )( dx/dλ ∂/∂x + dy/dλ ∂/∂y + dz/dλ ∂/∂z )

+ ( ∂f/∂z **d**z )( dx/dλ ∂/∂x + dy/dλ ∂/∂y + dz/dλ ∂/∂z )
.

And again:

**ω**(**v**) = ∂f/∂x dx/dλ ∂x/∂x + ∂f/∂x dy/dλ ∂x/∂y + ∂f/∂x dz/dλ ∂x/∂z

+ ∂f/∂y dx/dλ ∂y/∂x + ∂f/∂y dy/dλ ∂y/∂y + ∂f/∂y dz/dλ ∂y/∂z

+ ∂f/∂z dx/dλ ∂z/∂x + ∂f/∂z dy/dλ ∂z/∂y + ∂f/∂z dz/dλ ∂z/∂z
.

Now since ∂x/∂x = 1, ∂y/∂x = 0, etc, we have

**ω**(**v**) = ∂f/∂x dx/dλ + ∂f/∂y dy/dλ + ∂f/∂z dz/dλ
.

Since we can also write this as df/dλ, we have that:

**ω**(**v**) = df/dλ = **d**f(d/dλ).

So the tangent vectors of the x, y, and z coordinate curve give a natural basis for the tangent space, while the normal oneforms of the x=constant, y=constant, and z = constant surfaces give a natural basis for the cotangent space. The arguments here serve equally well for manifolds of different dimensions as well as different coordinate systems. We could equally well have chosen our coordinates to be r, θ and φ in spherical coordinates, **e**_{1} = d/dr, **e**_{2} = d/dθ, and **e**_{3} = d/dφ, while **e**^{1} = **d**r, **e**^{2} = **d**θ, and **e**^{3} = **d**&phi.

With this definition for the action of oneforms on vectors, the distinction of what operates on what becomes blurred, and the notion of one space being the dual of another becomes clear. Just as oneforms act on vectors to give real numbers, vectors can be thought to operate on oneforms to give real numbers, so that vectors are dual to oneforms, and T_{P}(M) becomes the dual space of T^{*}_{P}(M).

Putting vectors and oneforms on equal footing, write ω_{a} in component form as **ω** = ω_{a} = ω_{1} **e**^{1}_{a} + ω_{2} **e**^{2}_{a} + ω_{3} **e**^{3}_{a}. Similarily, write v^{a} as and **v** = v^{a} = v^{1}**e**_{1}^{a} + v^{2}**e**_{2}^{a} + v^{3}**e**_{3}^{a}. Earlier results tell us that ω(**v**) = ω_{a} v^{a} = ω_{1}v^{1} + ω_{2}v^{2} + ω_{3}v^{3}.

We can extend our abstract index notation with the Einstein summation convention that repeated symbols are summed over if one appears as a superscript and the other as a subscript. We can write **ω** = ω_{a} = ω_{1} **e**^{1}_{a} + ω_{2} **e**^{2}_{a} + ω_{3} **e**^{3}_{a} simply as ω_{α} **e**^{α}_{a} (summing over α). Similarily, we can write **v** = v^{b} = v^{1}**e**_{1}^{b} + v^{2}**e**_{2}^{b} + v^{3}**e**_{3}^{b} simply as v^{β} **e**_{β}^{b} (summing over β). We reserve greek indices for component indices and latin indices to identify vectors and oneforms. Thus **ω** = ω_{a} is a purely geometric concept independent of any coordinate system, while ω_{α} **e**^{α}_{a} is the expression of that concept with respect to some basis **e**^{α}_{a}, with ω_{α} being the components of **ω** in that basis.

To complete this notion, we need to know what the action of a basis oneform on a basis vector is. We know that **d**x (d/dx) = dx/dx = 1 and **d**x (d/dy) = dx/dy = 0, etc., so we can write **e**^{α}_{a} ( **e**_{β}^{a}) = 1 if α = β and 0 otherwise. More concisely, **e**^{α}_{a} ( **e**_{β}^{a}) = δ^{α}_{β} where δ is the Kronecker delta. We can now write:

**ω**(**v**) = ω_{a} v^{a} = ω_{α} **e**^{α}_{a} v^{β} **e**_{β}^{b}.

Rearranging:

ω_{a} v^{a} = ω_{α} v^{β} **e**^{α}_{a} **e**_{β}^{b}.

ω_{a} v^{a} = ω_{α} v^{β} δ^{α}_{β}

ω_{a} v^{a} = ω_{α} v^{α}

Thus we have a way to calculate ω_{a} v^{a}, which is only a geometric concept, independent of coordinates, by finding the components of ω_{a} and v^{a} in chosen bases, and computing the sum ω_{α} v^{α} To act a oneform on a vector, or equivalently, a vector on a oneform, we are said to **contract** the vector and the oneform with eachother.

For an example of a oneform that acts on a vector, we look at special relativity. Consider a plane monochromatic wave moving through space. It's direction in 3-space is encoded by the wave-vector **k**, and we can write a wavefunction describing the wave (e.g. an electric field) as Ψ(**x**,t) = A exp(**i**(**k**.**x** - ω t)) where **x** is some position vector. Translating to four-vectors, we have **x** → x^{a} = (ct, x, y, z), and **k** → k_{a} = (-ω/c, k_{x}, k_{y},k_{z}). Then we can then form the contraction of k_{a} with x^{a} as φ = k_{a}x^{a} = **k**.**x** -ωt. Thus φ is the phase of the wave, and k_{a} is the normal oneform of φ, or the normal to surfaces of constant phase in 4-space.

Another example of oneforms that act on vectors can be found in Quantum mechanics, especially the Dirac formalism. A certain state ψ is represented by a contravariant vector or "ket" |ψ⟩ (a vector). Dual to this vector is a covariant vector or "bra" ⟨φ| (a oneform), and together they form an angle bracket ⟨φ|ψ⟩ which evaluates to a propability amplitude.

Finally, a much simpler example comes from linear algebra, in which vectors may be represented as column vectors, and oneforms as row vectors of the same size. The ordinary matrix product between the two then yields a scalar. Oneforms and vectors are often represented internally as vectors or arrays where computers are concerned.