# Multivariable sections
```agda
module foundation.multivariable-sections where
open import foundation.telescopes public
```
<details><summary>Imports</summary>
```agda
open import elementary-number-theory.natural-numbers
open import foundation.dependent-pair-types
open import foundation.iterated-dependent-product-types
open import foundation.multivariable-homotopies
open import foundation.universe-levels
open import foundation-core.function-types
```
</details>
## Idea
A **multivariable section** is a map of multivariable maps that is a right
inverse. Thus, a map
```text
s : ((x₁ : A₁) ... (xₙ : Aₙ) → A x) → (y₁ : B₁) ... (yₙ : Bₙ) → B y
```
is a section of a map of type
```text
f : ((y₁ : B₁) ... (yₙ : Bₙ) → B y) → (x₁ : A₁) ... (xₙ : Aₙ) → A x
```
if the composition `f ∘ s` is
[multivariable homotopic](foundation.multivariable-homotopies.md) to the
identity at
```text
(y₁ : B₁) ... (yₙ : Bₙ) → B y.
```
Note that sections of multivariable maps are equivalent to common
[sections](foundation-core.sections.md) by function extensionality, so this
definition only finds it utility in avoiding unnecessary applications of
[function extensionality](foundation.function-extensionality.md). For instance,
this is useful when defining induction principles on function types.
## Definition
```agda
module _
{l1 l2 : Level} (n : ℕ)
{{A : telescope l1 n}} {{B : telescope l2 n}}
(f : iterated-Π A → iterated-Π B)
where
multivariable-section : UU (l1 ⊔ l2)
multivariable-section =
Σ ( iterated-Π B → iterated-Π A)
( λ s →
multivariable-htpy
{ n = succ-ℕ n}
{{A = prepend-telescope (iterated-Π B) B}}
( f ∘ s)
( id))
map-multivariable-section :
multivariable-section → iterated-Π B → iterated-Π A
map-multivariable-section = pr1
is-multivariable-section-map-multivariable-section :
(s : multivariable-section) →
multivariable-htpy
{ n = succ-ℕ n}
{{A = prepend-telescope (iterated-Π B) B}}
( f ∘ map-multivariable-section s)
( id)
is-multivariable-section-map-multivariable-section = pr2
```