induced representation

+-- {: .rightHandSide}
+-- {: .toc .clickDown tabindex="0"}
###Context###
#### Representation theory
+-- {: .hide}
[[!include representation theory - contents]]
=--
=--
=--

# Induced modules
* table of contents
{:toc}

## Idea

Given a [[group]] $G$ with [[subgroup]] $H \hookrightarrow G$ and a [[representation]] of $H$, there is a canonically induced representation of $G$: the _induced representation_.

## Definition

We give an exposition of the

* [Traditional formulation](#TraditionalFormulation)

of induced representations. Then we provide a

* [General abstract formulation in homotopy type theory](#GeneralAbtractDefinition)

that refines the notion to [[∞-action|∞-representations]] of [[∞-groups]] equipped with any additional geometric structure.

### Traditional formulation
 {#TraditionalFormulation}

#### Induced representations
 {#InducedRepresentations}

Every [[subgroup]]-inclusion $H \overset{\iota}{\hookrightarrow} G$ induces a [[restricted representation]]-functor between the corresponding [[categories of representations]]

$$
  Rep(G)
    \overset{\iota^\ast }{\longrightarrow}
  Rep(H)
$$

which simply [[forgetful functor|forgets]] the full $G$-[[action]] on a given $G$-representation $V$ and remembers only the action of the subgroup $H$.

+-- {: .num_defn #InducedRepresentationsAsLeftAdjointToRestriction}
###### Definition
**(left-induced representations as [[left adjoint]] to [[restricted representations]])**

If the [[restricted representation|restriction functor]] $\iota^\ast$ has a [[left adjoint]] (which is usually the case, but depends on which exact flavour of [[groups]] and of their [[category of representations]] one considers), then this is called the functor assigning _left-induced representations_, often just _induced representations_, for short:

$$
  Rep(G)
    \underoverset
     {\underset{\iota^\ast}{\longrightarrow}}
     {\overset{ind_H^G}{\longleftarrow}}
     {\bot}
  Rep(H)
$$

=--

+-- {: .num_remark}
###### Remark

This is directly analogous to [[extension of scalars]] $\dashv$ [[restriction of scalars]].

=--

With given flavour of [[groups]] and their [[category of representations]] specified, it is typically immediate to give explicit formulas for left induced representations:

+-- {: .num_example #InductionOfFiniteDimensionalRepresentationsOfFiniteGroups}
###### Example
**(induction of [[finite-dimensional vector space|finite-dimensional]] [[linear representations]] of [[finite groups]])**

In the case that $G$ (and hence $H$) is a [[finite group]] and $Rep(G)$ is the [[category of representations|category of]] [[finite-dimensional vector space|finite-dimensional]] representations over some [[ground field]] $k$.,
the general induced representation functor (Def. \ref{InducedRepresentationsAsLeftAdjointToRestriction}) exists and is explicitly given by forming the [[tensor product of representations]] with the $H$-[[permutation representation]] spanned by the underlying [[set]] of $G$:

$$
  ind_H^G
  \;\colon\;
  V
    \mapsto
  k[G] \otimes_{H} V
  \,.
$$

For example, if $V = \mathbf{1}$ is the [[trivial representation]] of [[dimension]] 1 then its induced representation is the basic [[permutation representation]] spanned by the [[coset]]-space $G/H$:

$$
  ind_H^G
  \left(
    \mathbf{1}
  \right)
  \;=\;
  k[G/H]
  \,.
$$

See at _[[induced representation of the trivial representation]]_ for more.

=--

See e.g. [tomDieck 09, Chapter 4](#tomDieck09).

#### More exposition
 {#TraditionalFormulationExplanation}

Suppose a [[Lie group]] $G$ acts smoothly and transitively on a [[smooth manifold]] $M$.  The [[stabilizer subgroup]] of a given point $x \in M$ is then a Lie subgroup $H \subseteq G$, and

$$
  M \cong G/H
  \,,
$$

is the [[coset]] space.

Starting from this, there's a recipe taking any [[representation]] $s$ of $H$ on a [[vector space]] $V$ and turns it into a [[vector bundle]] $E$ over $M$ --- called the _induced bundle_.  Moreover, the group $G$ [[action|acts]] on this [[bundle]], and the [[projection]]

$$ \pi : E \to M $$

is compatible with the [[action]] of $G$:

$$ \pi(g e) = g \pi(e) .$$

Hence $E$ is a **$G$-equivariant** vector bundle over $M$.

The 'process' described is actually a [[functor]], the **induction functor**.

There's a [[category]]

$$Rep(H)$$

of linear representations of $H$, and a category

$$Vect(M,G)$$

of $G$-equivariant vector bundles over $M$.  The induced bundle construction gives a functor

$$L: Rep(H) \to Vect(M,G) $$

But, if you think about it, you'll notice there's also a functor going back the other way:

$$R: Vect(M,G) \to Rep(H) $$

If you give me a $G$-equivariant vector bundle $E$ over $M$, I can take its fiber over your favorite point $x$, and I get a vector space --- and this becomes a representation of the stabilizer group $H$, thanks to how $G$ acts on $E$.

This functor is simpler than the induced bundle construction!

Whenever we have functors going both ways between two categories, we should suspect that they're [[adjoint functor|adjoints]].   The simpler functor often amounts to 'forgetting' something.  This forgetful functor is usually the right adjoint.  It's partner going the other way, the left adjoint, usually involves 'constructing' something instead of 'forgetting' something.

And indeed, that's what's happening here!
Technically, this is to say that

$$hom(L V, F) \cong hom(V, R F)$$

Here $V$ is a representation of $H$ --- note abuse of notation in calling it $V$, which is the name for the vector space on which $G$ acts, instead of the more pedantic full name for a representation, which is something like $s: G \to GL(V)$.

Similarly, $F$ is a $G$-equivariant vector bundle over $M$ --- and this should be something like $\pi : F \to M$, or something even more long-winded that gives a name to how $G$ acts on $F$ and $M$.

$L V$ is the induced bundle corresponding to $V$.

$R F$ is the fiber of $F$ over your favorite point $x$, which becomes a representation of $G$.

And this:

$$hom(L V, F) \cong hom(V, R F)$$

says that $G$-equivariant vector bundle maps from $L V$ to $F$ are in natural 1-1 correspondence with intertwining operators from $V$ to $R F$.

Now, whenever you see any sort of 'forgetful' process, you should wonder if it has a left adjoint, a construction which in some loose sense is the 'reverse' of forgetting.  Why?  Because these left adjoints tend to be important.

Endowed with this heuristic, as soon as you see there's a rather obvious 'forgetful' process that takes a $G$-equivariant vector bundle over $M$ and gives a representation of $H$ on the fiber over $x \in M$, you will seek the 'reverse' process --- and then you'll rediscover the induced bundle construction!

And why is this so great?  Well, there's also a process that takes any representation of $G$ and [[restricted representation|restricts]] it to a representation of $H$:

$$R': Rep(G) \to Rep(H) $$

And this too, has a [[left adjoint]]:

$$L' : Rep(H) \to Rep(G) $$

which is called the _induced representation_.

#### Detailed description
 {#TraditionalDetailed}

Given a [[group]] $G$ with a subgroup $H$, and a [[representation]] $s$ of $H$ on a vector space $V$, we define a left [[action]] of $H$ on the [[product]] $G\times V$ by $h\cdot (g, v) = (g h^{-1}, s(h)v)$.  We write $[(g,v)]$ for the orbit, or equivalence class, that contains $(g,v)$.

We then define $E = (G\times V)/H$ as the set of orbits of that [[action]] of $H$, $M = G/H$ as the set of left cosets of $H$, and the projection $\pi: E\to M$ by $\pi ([(g,v)]) = g H$, where of course it makes no difference if we re-describe the orbit $[(g,v)]$ as $[(g h^{-1}, s(h)v]$ for any $h\in H$ because $(g h^{-1}) H = g H$.

For each $x\in M$, choose $g$ to be any element of $G$ such that $x = g H$.  Define $E_x = \pi^{-1}(x)$, and $\phi_g:V\to E_x$, $\phi_g(v) = [(g,v)]$.

The map $\phi_g$ is onto:  for any $[(k,w)]\in E_{(g H)} = \pi^{-1}(g H)$, we have $k=g h_1^{-1}$ for some $h_1\in H$, so $k^{-1} g\in H$, $(k^{-1} g)\cdot (g, s(g^{-1} k)w) = (k,w)$, so $\phi_g(s(g^{-1} k)w) = [(g, s(g^{-1} k)w)] = [(k,w)]$.

The map $\phi_g$ is one-to-one:  if $\phi_g(v) = \phi_g(w)$, then $[(g,v)]=[(g,w)]$, so for some $h_1\in H$, we have $h_1\cdot (g,v) = (g,w)$, or $(g h_1^{-1}, s(h_1)v) = (g,w)$; equating the first coordinates requires $h_1=e$, and $s$ is a representation so $s(e)=1_V$, and $v=w$.

Since $\phi_g$ is a bijection between $E_x$ and the vector space $V$, we can make $E_x$ into a vector space by defining $\alpha p + \beta q \equiv \phi_g(\alpha \phi_g^{-1}(p) + \beta \phi_g^{-1}(q))$, for all $\alpha, \beta \in \mathbb{R}, p, q \in E_x$.  But is this independent of our choice of $g$?  If we chose $g h$ instead of $g$, we'd have $\phi_{g h}(v) = [(g h,v)] = [(g, s(h)v)] = \phi_g(s(h)v)$, so $\phi_{g h}=\phi_g\circ s(h)$, and $\phi_{g h}^{-1}=s(h^{-1})\circ \phi_g^{-1}$.  Then:

$\phi_{g h}(\alpha \phi_{g h}^{-1}(p) + \beta \phi_{g h}^{-1}(q)) =
(\phi_g\circ s(h))(\alpha (s(h^{-1})\circ \phi_g^{-1})(p) + \beta (s(h^{-1})\circ \phi_g^{-1})(q)) = \phi_g(\alpha \phi_g^{-1}(p) + \beta \phi_g^{-1}(q))$

in agreement with our original definition.

We define the action of $G$ on $E$ by $g_1\cdot [(g,v)] = [(g_1 g,v)]$, or in other words $g_1\cdot \phi_g(v) = \phi_{g_1 g}(v)$.
We then have:

$\pi(g_1\cdot [(g,v)]) = \pi[(g_1 g,v)] = (g_1 g) H = g_1\cdot (g H) = g_1\cdot \pi([(g,v)])$

That is, $\pi$ is a $G$-morphism.  This also means that the action maps fibers to fibers, $g_1:E_{(g H)}\to E_{g_1\cdot (g H)}$.  What's more, the action of $g_1$ restricted to the fiber $E_{(g H)}$ is $\phi_{g_1 g}\circ \phi_g^{-1}$, passing from $E_{(g H)}\to V \to E_{g_1\cdot (g H)}$, and this
is linear simply by virtue of the way we've defined the vector space operations on the $E_x$.

We get a representation $r$ of $G$ on the vector space $\Gamma(E)$ of sections of the bundle $E$ by:

$(r(g_1)f)(x) = g_1\cdot f(g_1^{-1}\cdot x)$

### General abstract formulation in homotopy type theory
 {#GeneralAbtractDefinition}

We formulate induction and coinduction of representations abstractly in [[homotopy type theory]]. (Hence the following is automatically the [[(∞,1)-category theory]]-version, which in parts is sometimes referred to as _[[cohomological induction]]_.)

Let $\mathbf{H}$ be an ambient [[(∞,1)-topos]]. By the discussion at _[[∞-action]]_, for $G \in Grp(\mathbf{H})$ a [[group object in an (∞,1)-category|group object]] in $\mathbf{H}$, hence an [[∞-group]], the [[slice (∞,1)-topos]] $\mathbf{H}_{/\mathbf{B}G}$ over its [[delooping]] is the [[(∞,1)-category]] of $G$-[[∞-actions]]

$$
  Act(G) \simeq \mathbf{H}_{/\mathbf{B}G}
  \,.
$$

(A genuine _[[∞-representation]]/[[∞-module]]_ over $G$ may be taken to be a an abelian $\infty$-group object in $Act(G)$, but we can just as well work in the more general context of possibly non-linear representations, hence of actions.)

Accordingly, for $f \colon H \to G$ a homomorphism of [[∞-groups]], hence for a morphism $\mathbf{B}f \colon \mathbf{B}H \to \mathbf{B}G$ of their [[deloopings]], there is the corresponding [[base change geometric morphism]]

$$
  (\sum_f \dashv f^* \dashv \prod_f)
  \colon
  Act(H)
   \stackrel{\overset{\sum_f}{\to}}{\stackrel{\overset{f^*}{\leftarrow}}{\underset{\prod_f}{\to}}}
  Act(G)
  \,.
$$

Here

* the [[inverse image]]/[[(∞,1)-pullback]] functor $f^*$ produces the "[[restricted representation|restricted]]" $\infty$-representations along $f$;

* the [[dependent sum]] $\sum_f$ is the _induced representation_ ∞-functor;

* the [[dependent product]] $\prod_f$ is the _coinduced representation_ ∞-functor.

{#LawvereInduced} For the case of [[permutation representations]] of [[discrete groups]]  this perspective is made explicit in ([Lawvere 69, p. 14](#Lawvere69), [Lawvere 70, p. 5](#Lawvere70)).

## Properties

### Brauer induction theorem
 {#BrauerInductionTheorem}

The [[Brauer induction theorem]] says that over the [[complex numbers]] the [[virtual representations]] of a [[finite group]] are all virtual combinations of [[induced representations]] of 1-dimensional representations.

### Unitarity

+-- {: .standout}
Beware! The chain of reasoning in this subsection is not complete, and I'm not confident that it's entirely correct. I'm posting it half-finished in the hope that many hands will make lighter (and more accurate) work.
=--

We discuss that [[unitary representations]] induce again unitary representations.

(This is for instance relevant in applications to [[physics]], such as in the study of [[unitary representation of the Poincaré group]].)

Let's say $V$ has an inner product, $\lang \cdot, \cdot \rang$, and $s$ is a unitary representation. We can define an inner product on $E_x$ by $\lang \lang p, q \rang \rang \equiv \lang \phi_g^{-1}(p), \phi_g^{-1}(q) \rang$. This definition is independent of our choice of $g$: if we chose $g h$ instead, we'd have

$$\lang \lang p, q \rang \rang = \lang \phi_{g h}^{-1}(p), \phi_{g h}^{-1}(q) \rang = \lang s(h^{-1}) \circ \phi_g^{-1}(p), s(h^{-1}) \circ \phi_g^{-1}(q) \rang = \lang \phi_g^{-1}(p), \phi_g^{-1}(q) \rang.$$

To be really thorough, we should verify that $\lang \lang \cdot, \cdot \rang \rang$ is in fact an inner product, but this should follow directly from our definition of the vector space operations on $E_x$.

Now we need to show that the action of any $g_1 \in G$ on the fiber $E_{(g H)}$ is unitary:

$$\lang \lang g_1 \cdot p, g_1 \cdot q \rang \rang = \lang \lang \phi_{g_1 g} \circ \phi_g^{-1}(p), \phi_{g_1 g} \circ \phi_g^{-1}(q) \rang \rang = \lang \phi_{g_1 g}^{-1} \circ \phi_{g_1 g} \circ \phi_g^{-1}(p), \phi_{g_1 g}^{-1} \circ \phi_{g_1 g} \circ \phi_g^{-1}(q) \rang = \lang \phi_g^{-1}(p), \phi_g^{-1}(q) \rang = \lang \lang p, q \rang \rang.$$

Finally, we need to define an inner product on $\Gamma(E)$, and show that the representation $r$ is unitary. If we had a $G$-invariant measure $\mu$ on $G/H$, we could define the inner product of two sections of $f$ and $f'$ of $E$ to be

$$\int \lang \lang f(x), f'(x) \rang \rang \; d\mu(x).$$

We would then have

$$\int \lang \lang (r(g_1)f)(x), (r(g_1)f')(x) \rang \rang \; d\mu(x) = \int \lang \lang g_1 \cdot f(g_1^{-1} \cdot x), g_1 \cdot f'(g_1^{-1} \cdot x) \rang \rang \; d\mu(x) = \int \lang \lang f(g_1^{-1} \cdot x), f'(g_1^{-1} \cdot x) \rang \rang \; d\mu(x)$$

(because $g_1$ acts unitarily on each fiber)

$$= \int \lang \lang f(x), f'(x) \rang \rang \; d\mu(g_1 \cdot x)$$

(because $G$ acts transitively on $G/H$)

$$= \int \lang \lang f(x), f'(x) \rang \rang \; d\mu(x)$$

(because $\mu$ is $G$-invariant). This shows that $r$ is unitary.

+-- {: .query}
But where do we get a $G$-invariant measure on $G/H$?
=--

### Adjoint of induced bundle construction

The induced bundle construction described above is a [[functor]] that takes representations of the [[stabilizer subgroup]] $H$ to $G$-equivariant vector bundles over $M$:

$$L: Rep(H) \to Vect(M,G) $$

There is a related functor going the other way:

$$R: Vect(M,G) \to Rep(H) $$

which [[restriction|restricts]] the action of $G$ on the whole bundle to the action of the stabilizer subgroup $H$ on the fiber over the chosen point $x$.  The existence of this [[adjunction]] is known as **[[Frobenius reciprocity]]**.

We now wish to show that $L$ and $R$ are adjoint functors.

[[!include induced representation > adjoint]]

In the diagram above, on the top left we have a generic $G$-equivariant vector bundle over $M$, $F\in Vect(M,G)$, with projection $\pi_1:F\to M$, and a chosen point $x\in M$ whose stabilizer subgroup is $H$.  The functor $R$ maps $F$ to a representation of $H$ on the fiber over $x$, $\pi_1^{-1}(x)$, shown on the top right.

On the bottom right, we have a generic representation of $H$ on a vector space $V$.  The morphisms of $Rep(H)$ are intertwiners, so we are interested in intertwiners such as $i:V\to \pi_1^{-1}(x)$.  The functor $L$, the induced bundle construction, maps a generic representation of $H$ to a $G$-equivariant vector bundle $(G\times V)/H$, shown on the bottom left.  This bundle has a projection $\pi_2: (G\times V)/H \to G/H$, $\pi_2([(g,v)])=g H$.  Since $M \cong G/H$, this bundle is in $Vect(M,G)$.  And we are interested in the morphisms of $Vect(M,G)$, such as $(f,m)$ where $f:L(V)\to F$ and $m:G/H\to M$.

In fact, we need to work with a _subcategory_ of $Vect(M,G)$ in which all morphisms preserve the point $x\in M$.  When we deal with bundles over $G/H \cong M$, we will use the obvious bijection $g H \to g\cdot x$, and accordingly restrict ourselves to vector bundle morphisms that map $x$ to the coset $e H$ or _vice versa_.

We are assuming that $G$ acts transitively on $M$, so given any $y\in M$ there exists at least one element of $G$, say $k(y)$, such that $k(y)\cdot x = y$.  We will now assume that some definite function $k:M\to G$ has been chosen with this property, and for convenience we will further assume that $k(x)=e$, the identity element in $G$.  The group element $k(y)$ gives us a specific way to use the action of $G$ on $M$ to get from our chosen point $x$ to some other point $y$ --- and equally, to use the action of $G$ on the whole bundle $F$ to get from the fiber over $x$ to the fiber over $y$.

Now, to show that $L$ and $R$ are adjoint functors, we need to construct a bijection between the intertwiners $i:V\to \pi_1^{-1}(x)$ and the $G$-equivariant vector bundle morphisms $(f,m)$, where $f:L(V)\to F$ and $m:G/H\to M$.

Given an intertwiner $i:V\to \pi_1^{-1}(x)$, we start by defining $m:G/H\to M$ by:

$$m(g H)=g\cdot x$$

which is independent of $i$, and is just the obvious bijection between $G/H$ and $M$.  Next, we define $f:L(V)\to F$ by:

$$f([(g,v)]) = g\cdot i(v)$$

In other words, given the equivalence class $[(g,v)]$ we use the intertwiner $i$ to take $v\in V$ to $\pi_1^{-1}(x)$, and then the action of $G$ on $F$ to take the result to the fiber $\pi_1^{-1}(g\cdot x)$.  This satisfies the compatibility condition on the projections:

$$\pi_1(f([(g,v)])) = g\cdot x = m(g H) = m(\pi_2([(g,v)]))$$

We also need to check that $f$ commutes with the actions of $G$ on the respective bundles:

$$f(g_1\cdot [(g,v)]) = f([(g_1 g,v)]) = (g_1 g)\cdot i(v) = g_1\cdot f([(g,v)])$$

Next, given a $G$-equivariant vector bundle morphism $(f,m)$, where $f:L(V)\to F$ and $m:G/H\to M$ with $m(e H)=x$, we define an intertwiner $i:V\to \pi_1^{-1}(x)$ by:

$$i(v)=f([(e,v)])$$

We know $i$ will map to $\pi_1^{-1}(x)$ because $f$ must map $[(e,v)]$ to a point in the fiber over $m(\pi_2([(e,v)]))=m(e H)=x$.

We check that this is an intertwiner for the representations of $H$ on the respective vector spaces:

$$i(s(h)v)=f([(e,s(h)v)])=f([(h,v)])=f(h\cdot[(e,v)])=h\cdot i(v)$$

We can also demonstrate a bijection between intertwiners and $G$-equivariant vector bundle morphisms in the other direction:  intertwiners $i^*:\pi_1^{-1}(x)\to V$ and vector bundle morphisms $(f^*,m^*)$, where $f^*:F\to L(V)$ and $m^*:M\to G/H$.

Given an intertwiner $i^*:\pi_1^{-1}(x)\to V$, we define $m^*:M\to G/H$ as:

$$m^*(y) = k(y) H$$

We define the map $f^* : F \to L(V)$ by:

$$f^*(w) = [(k(\pi_1(w)), i^*(k(\pi_1(w))^{-1}\cdot w) )]$$

for each $w\in F$.  Because $k(\pi_1(w))\cdot x = \pi_1(w)$, $k(\pi_1(w))^{-1}$ will map the entire fiber to which $w$ belongs to $\pi_1^{-1}(x)$, the domain of the intertwiner $i^*$.  And we have:

$$\pi_2(f^*(w)) = k(\pi_1(w)) H = m^*(\pi_1(w))$$

The map $f^*$ is a linear map between the fibers $\pi_1^{-1}(y)$ and $\pi_2^{-1}(m^*(y))$, because, along with the linearity of $i^*$, the vector space structure on the fibers of $L(V)$ is _defined_ so all maps of the form $v\to [(g,v)]$ are linear.  So, $m^*$ and $f^*$ together give us a vector bundle morphism from $F$ to $L(V)$.

In order to be a morphism in the category of $G$-equivariant vector bundles, $f^*$ should also commute with the action of $G$.  We have:

$$f^*(g\cdot w) = [(k(\pi_1(g\cdot w)), i^*(k(\pi_1(g\cdot w))^{-1} g\cdot w) )] = [(k(g\cdot \pi_1(w)), i^*(k(g\cdot \pi_1(w))^{-1} g\cdot w) )]$$

Let's abbreviate $\pi_1(w)$ as $y$ and define $h=k(g\cdot y)^{-1} g k(y)$, which takes $x$ to $x$ and so must lie in $H$.  Then we have:

$$f^*(g\cdot w) = [(k(g\cdot y), i^*(h k(y)^{-1}\cdot w) )] = [(k(g\cdot y), s(h) i^*(k(y)^{-1}\cdot w) )] = [(k(g\cdot y) h, i^*(k(y)^{-1}\cdot w) )]$$
$$ = [(g k(y) , i^*(k(y)^{-1}\cdot w) )] = g\cdot [(k(y) , i^*(k(y)^{-1}\cdot w) )] = g\cdot f^*(w)$$

Suppose we're given a $G$-invariant vector bundle morphism $(f^*,m^*)$, where $f^*:F\to L(V)$ and $m^*:M\to G/H$, with $m^*(x)=e H$.

We make use of the linear bijection $\phi_e:V\to E_{e H}$, defined by $\phi_e(v)=[(e,v)]$.  We introduced these linear bijections $\phi_g$ when initially describing the induced bundle construction. We define $i^*:\pi_1^{-1}(x)\to V$ by:

$$i^*(w) = \phi_e^{-1}(f^*(w))$$

We check that this is an intertwiner between the relevant representations of $H$:

$$i^*(h\cdot w) = \phi_e^{-1}(f^*(h\cdot w))= \phi_e^{-1}(h\cdot f^*(w))$$

Suppose $f^*(w)=[(e,v)]$ for some $v\in V$.  Then $i^*(w) = v$, and :

$$h\cdot f^*(w) = [(h,v)] = [(e,s(h)v)]$$

$$i^*(h\cdot w) = \phi_e^{-1}([(e,s(h)v)]) = s(h)v = s(h) i^*(w)$$

## Examples and Applications

### Regular representation

The [[regular representation]] of a group $G$, as a linear representation, is the induced representation of the trivial representation along the trivial subgroup inclusion $Ind_1^G(1)$.

### Centralizer algebra / Hecke algebra
 {#HeckeAlgebra}

Let

$$
  i \colon H \hookrightarrow G
$$

be a group homomorphism (often assumed to be a [[subgroup]] inclusion, and sometimes with $G$ assumed to be a [[finite group]]). For $E \in H Rep$ some $H$-representation (often taken to be the trivial $H$-representation), let $Ind_i E \in G Rep$ be the induced $G$-representation. Then the [[endomorphism ring]] $End_G(Ind_i E)$ of $Ind_i E$ in $G Rep$ is called the _centralizer algebra_ or also the _[[Hecke algebra]]_ or _[[Iwahori-Hecke algebra]]_ $Hecke(E,i)$ of the induced representation. (Basics are in ([Woit, def. 2](#Woit)), details are in ([Curtis-Reiner, section 67](#CR)), a quick survey of related theory is in ([Srinivasan](http://homepages.math.uic.edu/~srinivas/bfggpaper.pdf))).

In terms of the notation in _[General abstract formulation](#GeneralAbtractDefinition)_ above and for $i \colon H \to G$ any homomorphism of $\infty$-groups, we have the [[∞-monoid]]

$$
  Hecke(E,i)
  \coloneqq
\underset{\mathbf{B}G}{\prod}\left[\underset{\mathbf{B}i}{\sum} E, \underset{\mathbf{B}i}{\sum} E \right]
  \,,
$$

where $[-,-]$ is the [[internal hom]] in the [[slice (∞,1)-topos]] $\mathbf{H}_{/\mathbf{B}G} \simeq G Act(\mathbf{H})$.

For $V \in Act(G)$ any other representation, there is a canonical [[∞-action]] of $Hecke(E,i)$ on $\underset{\mathbf{B}G}{\prod} \left[\underset{\mathbf{B}i}{\sum} E , V \right]$. If here $E$ is the trivial representation then by adjointness this is the [[invariants]] $V^G$ of $V$ and hence the Hecke algebra acts on the invariants. (See for instance ([Woit, def. 2](#Woit))). This is sometimes called the _Hecke algebra action on the Iwahori fixed vectors_ ([e.g. here, p. 9](#http://sporadic.stanford.edu/bump/bbf.pdf))

### Zuckerman functors: Coinduction on Harish-Chandra modules

Coinduction on [[Harish-Chandra modules]] is referred to as
_[[Zuckerman induction]]_. See there for more details.

## Related concepts

* The identification of representation induction as the extra left adjoint in a [[base change]] morphism, as discussed in the _[General abstract discussion](#GeneralAbtractDefinition)_ above, puts induced representations in the same general abstract framework as [[existential quantification]] in [[logic]] and generally of [[dependent sum]] in [[dependent type theory]] (see there for more details). This relation has first been amplified in ([Lawvere](#Lawvere)).

* If the modules over a group are considered as comodules over the function Hopf algebra over the group, then one can instead consider the induction for comodules. See [[cotensor product]].

* The [[derived functor]] of the representation induction functor is often referred to as _[[cohomological induction]]_.

* [[Dirac induction]]

* The [[character]] of an induced representation is an [[induced character]].

* [[Artin-Lam induction exponent]]

[[!include homotopy type representation theory -- table]]

## References

### Traditional formulation
 {#ReferencesTraditionalFormulation}

* encyclopaedia of math [induced representation](https://www.encyclopediaofmath.org/index.php/Induced_representation)

Original articles includes

* {#Mackey52} [[George Mackey]], _Induced representations of locally compact groups I_, Annals of Mathematics, 55 (1952) 101–139;

* {#Mackey53} [[George Mackey]], _Induced representations of locally compact groups II_, Annals of Mathematics, 58 (1953) 193–221;

* {#Mackey68} [[George Mackey]], _Induced representations of groups and quantum mechanics_, W. A. Benjamin, New York, 1968

Textbook accounts include

* {#CR} C. Curtis and I. Reiner, _Methods of Representation Theory with applications to finite groups and orders_, Wiley (1987)

Lecture note with standard material on induced representations and [[Frobenius reciprocity]] include

* {#tomDieck09} [[Tammo tom Dieck]], Chapter 4 of _Representation theory_, 2009 ([pdf](http://www.uni-math.gwdg.de/tammo/rep.pdf))

MO discussion includes

* [Wrong-way Frobenius reciprocity for finite groups representations](http://mathoverflow.net/questions/132272/wrong-way-frobenius-reciprocity-for-finite-groups-representations)

The [exposition of the Traditional formulation](#TraditionalFormulation) in the above entry is in parts taken from

* [[Greg Egan]], _[Induced representations](http://golem.ph.utexas.edu/category/2009/03/unitary_representations_of_the.html#c023252)_

* [[John Baez]] _[Reply](http://golem.ph.utexas.edu/category/2009/03/unitary_representations_of_the.html#c023258)_

and related discussion is in

* [[John Baez]], [Unitary Representations of the Poincare Group](http://golem.ph.utexas.edu/category/2009/03/unitary_representations_of_the.html#comments)

### General abstract formulation

The [general abstract formulation](#GeneralAbtractDefinition) above is mentioned (for [[discrete groups]] and their [[permutation representations]]) in

* {#Lawvere69} [[Bill Lawvere]], _[[Adjointness in Foundations]]_, Dialectica 23 (1969), 281-296,  Reprints in Theory and Applications of Categories, No. 16, 2006, pp. 1–16. ([pdf](http://www.tac.mta.ca/tac/reprints/articles/16/tr16.pdf))

* {#Lawvere70} [[Bill Lawvere]], _[[Equality in hyperdoctrines and comprehension schema as an adjoint functor]]_, Proceedings of the AMS Symposium on Pure Mathematics XVII (1970), 1-14. ([pdf](https://ncatlab.org/nlab/files/LawvereComprehension.pdf))

The general case of $\infty$-groups in $\infty$-toposes is further discussed in

* [[Urs Schreiber]], _[[schreiber:differential cohomology in a cohesive topos]]_

[[!redirects induced module]]
[[!redirects induced representations]]
[[!redirects induction functor]]
[[!redirects induction functors]]

[[!redirects coinduced representation]]
[[!redirects coinduced representations]]
[[!redirects coinduction functor]]
[[!redirects coinduction functors]]

[[!redirects induced action]]
[[!redirects induced actions]]

[[!redirects left induced representation]]
[[!redirects left induced representations]]

[[!redirects right induced representation]]
[[!redirects right induced representations]]

[[!redirects left induced action]]
[[!redirects left induced actions]]

[[!redirects right induced action]]
[[!redirects right induced actions]]


induced representation > adjoint

<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='600' height='700'>
<g transform='translate(-66.000000, -5.000000)'>
<polyline fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='113.369,252.501 257.731,252.501 ' />
<g transform='translate(92.368778, 244.501131)'>
<text x='0' y='12' font-size='12px'><tspan font-style='italic'>M</tspan></text>
</g>
<g transform='translate(127.414027, 260.501131)'>
<text x='0' y='12' font-size='12px' font-style='italic'>x</text>
</g>
<g transform='translate(100, 30)'>
<text x='39' y='16' font-size='12px'><tspan font-style='italic'>G</tspan>-equivariant</text>
<text x='0' y='32' font-size='12px'>vector bundle <tspan font-style='italic'>F</tspan>, π<tspan dy='5px' font-size='10px'>1</tspan><tspan dy='-5px'>: </tspan><tspan font-style='italic'>F</tspan> → <tspan font-style='italic'>M</tspan></text>
</g>
<g transform='translate(464, 30)'>
<text x='10' y='16' font-size='12px'>Representation <tspan font-style='italic'>R</tspan>(<tspan font-style='italic'>F</tspan>) of <tspan font-style='italic'>H</tspan></text>
<text x='60' y='32' font-size='12px'>on π<tspan dy='5px' font-size='10px'>1</tspan><tspan dy='-10px' font-size='10px'>–1</tspan><tspan dy='5px'>(</tspan><tspan font-style='italic'>x</tspan>)</text>
</g>
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(100%,100%,100%)' points='149.459,180.32 185.55,108.139 113.369,72.0486 77.2783,144.23 ' />
<polygon fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='149.459,180.32 185.55,108.139 113.369,72.0486 77.2783,144.23 ' />
<path stroke='rgb(0%,0%,0%)' stroke-width='0.5px' opacity='1' fill='none' d='M150.488,131.222 A20.1752,20.1752 0 1 0 111.512,131.222' />
<g transform='translate(127.414027, 90.009188)'>
<text x='0' y='12' font-size='12px' font-style='italic'>h</text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='146' cy='140' rx='3.5' ry='3.5' />
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='117' cy='140' rx='3.5' ry='3.5' />
<polyline fill='none' stroke-opacity='1' stroke-width='0.5px' stroke='rgb(0%,0%,0%)' points='111.926,120.963 111.926,125.052 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='113.768,124.406 113.559,124.509 113.056,124.733 112.754,124.853 112.449,124.956 112.165,125.028 111.926,125.052 111.71,125.028 111.43,124.956 111.115,124.853 110.793,124.733 110.244,124.509 110.011,124.406 111.926,131.406 113.768,124.406 ' />
<polyline fill='none' stroke-opacity='1' stroke-width='1px' stroke='rgb(0%,0%,0%)' points='131.414,189.343 131.414,232.586 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='134.572,231.479 134.213,231.654 133.351,232.039 132.833,232.244 132.31,232.421 131.824,232.544 131.414,232.586 131.043,232.544 130.563,232.421 130.023,232.244 129.472,232.039 128.53,231.654 128.13,231.479 131.414,243.479 134.572,231.479 ' />
<g transform='translate(146.414027, 208.410633)'>
<text x='0' y='12' font-size='12px'>π<tspan dy='5px' font-size='10px'>1</tspan></text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='131' cy='253' rx='3.5' ry='3.5' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(100%,100%,100%)' points='203.595,180.32 239.686,108.139 167.505,72.0486 131.414,144.23 ' />
<polygon fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='203.595,180.32 239.686,108.139 167.505,72.0486 131.414,144.23 ' />
<path stroke='rgb(0%,0%,0%)' stroke-width='0.5px' opacity='1' fill='none' d='M205.488,131.222 A20.1752,20.1752 0 1 0 166.512,131.222' />
<g transform='translate(181.549774, 90.009188)'>
<text x='0' y='12' font-size='12px' font-style='italic'>h</text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='200' cy='140' rx='3.5' ry='3.5' />
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='171' cy='140' rx='3.5' ry='3.5' />
<polyline fill='none' stroke-opacity='1' stroke-width='0.5px' stroke='rgb(0%,0%,0%)' points='166.062,120.963 166.062,125.052 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='167.904,124.406 167.695,124.509 167.192,124.733 166.89,124.853 166.585,124.956 166.301,125.028 166.062,125.052 165.846,125.028 165.566,124.956 165.251,124.853 164.929,124.733 164.38,124.509 164.146,124.406 166.062,131.406 167.904,124.406 ' />
<polyline fill='none' stroke-opacity='1' stroke-width='1px' stroke='rgb(0%,0%,0%)' points='185.55,189.343 185.55,232.586 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='188.708,231.479 188.349,231.654 187.487,232.039 186.969,232.244 186.446,232.421 185.96,232.544 185.55,232.586 185.179,232.544 184.699,232.421 184.159,232.244 183.607,232.039 182.666,231.654 182.266,231.479 185.55,243.479 188.708,231.479 ' />
<g transform='translate(200.549774, 208.410633)'>
<text x='0' y='12' font-size='12px'>π<tspan dy='5px' font-size='10px'>1</tspan></text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='186' cy='253' rx='3.5' ry='3.5' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(100%,100%,100%)' points='257.731,180.32 293.821,108.139 221.64,72.0486 185.55,144.23 ' />
<polygon fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='257.731,180.32 293.821,108.139 221.64,72.0486 185.55,144.23 ' />
<path stroke='rgb(0%,0%,0%)' stroke-width='0.5px' opacity='1' fill='none' d='M259.488,131.222 A20.1752,20.1752 0 1 0 220.512,131.222' />
<g transform='translate(235.685520, 90.009188)'>
<text x='0' y='12' font-size='12px' font-style='italic'>h</text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='254' cy='140' rx='3.5' ry='3.5' />
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='225' cy='140' rx='3.5' ry='3.5' />
<polyline fill='none' stroke-opacity='1' stroke-width='0.5px' stroke='rgb(0%,0%,0%)' points='220.198,120.963 220.198,125.052 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='222.04,124.406 221.83,124.509 221.328,124.733 221.025,124.853 220.721,124.956 220.437,125.028 220.198,125.052 219.981,125.028 219.701,124.956 219.386,124.853 219.065,124.733 218.516,124.509 218.282,124.406 220.198,131.406 222.04,124.406 ' />
<polyline fill='none' stroke-opacity='1' stroke-width='1px' stroke='rgb(0%,0%,0%)' points='239.686,189.343 239.686,232.586 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='242.843,231.479 242.484,231.654 241.623,232.039 241.104,232.244 240.582,232.421 240.095,232.544 239.686,232.586 239.315,232.544 238.835,232.421 238.294,232.244 237.743,232.039 236.802,231.654 236.401,231.479 239.686,243.479 242.843,231.479 ' />
<g transform='translate(254.685520, 208.410633)'>
<text x='0' y='12' font-size='12px'>π<tspan dy='5px' font-size='10px'>1</tspan></text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='240' cy='253' rx='3.5' ry='3.5' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(100%,100%,100%)' points='582.545,180.32 618.636,108.139 546.455,72.0486 510.364,144.23 ' />
<polygon fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='582.545,180.32 618.636,108.139 546.455,72.0486 510.364,144.23 ' />
<path stroke='rgb(0%,0%,0%)' stroke-width='0.5px' opacity='1' fill='none' d='M584.488,131.222 A20.1752,20.1752 0 1 0 545.512,131.222' />
<g transform='translate(560.500000, 90.009188)'>
<text x='0' y='12' font-size='12px' font-style='italic'>h</text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='579' cy='140' rx='3.5' ry='3.5' />
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='550' cy='140' rx='3.5' ry='3.5' />
<polyline fill='none' stroke-opacity='1' stroke-width='0.5px' stroke='rgb(0%,0%,0%)' points='545.012,120.963 545.012,125.052 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='546.854,124.406 546.645,124.509 546.142,124.733 545.84,124.853 545.535,124.956 545.251,125.028 545.012,125.052 544.796,125.028 544.516,124.956 544.201,124.853 543.879,124.733 543.33,124.509 543.096,124.406 545.012,131.406 546.854,124.406 ' />
<polyline fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='113.369,649.497 257.731,649.497 ' />
<g transform='translate(92.368778, 641.496606)'>
<text x='-20' y='12' font-size='12px'><tspan font-style='italic'>G</tspan> / <tspan font-style='italic'>H</tspan></text>
</g>
<g transform='translate(75, 430)'>
<text x='62' y='16' font-size='12px'><tspan font-style='italic'>G</tspan>-equivariant</text>
<text x='0' y='32' font-size='12px'>vector bundle <tspan font-style='italic'>L</tspan>(<tspan font-style='italic'>V</tspan>), π<tspan dy='5px' font-size='10px'>2</tspan><tspan dy='-5px'>: </tspan>(<tspan font-style='italic'>G</tspan>×<tspan font-style='italic'>V</tspan>) / <tspan font-style='italic'>H</tspan> → <tspan font-style='italic'>G</tspan> / <tspan font-style='italic'>H</tspan></text>
</g>
<g transform='translate(481.500000, 430)'>
<text x='0' y='24' font-size='12px'>Representation <tspan font-style='italic'>s</tspan> of <tspan font-style='italic'>H</tspan> on <tspan font-style='italic'>V</tspan></text>
</g>
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(100%,100%,100%)' points='77.2783,505.135 149.459,469.044 185.55,541.225 113.369,577.316 ' />
<polygon fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(100%,0%,0%)' points='77.2783,505.135 149.459,469.044 185.55,541.225 113.369,577.316 ' />
<path stroke='rgb(0%,0%,0%)' stroke-width='0.5px' opacity='1' fill='none' d='M150.488,528.222 A20.1752,20.1752 0 1 0 111.512,528.222' />
<g transform='translate(127.414027, 487.004663)'>
<text x='0' y='12' font-size='12px' font-style='italic'>h</text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='146' cy='537' rx='3.5' ry='3.5' />
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='117' cy='537' rx='3.5' ry='3.5' />
<polyline fill='none' stroke-opacity='1' stroke-width='0.5px' stroke='rgb(0%,0%,0%)' points='111.926,517.958 111.926,522.048 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='113.768,521.402 113.559,521.504 113.056,521.729 112.754,521.848 112.449,521.951 112.165,522.023 111.926,522.048 111.71,522.023 111.43,521.951 111.115,521.848 110.793,521.729 110.244,521.504 110.011,521.402 111.926,528.402 113.768,521.402 ' />
<polyline fill='none' stroke-opacity='1' stroke-width='1px' stroke='rgb(0%,0%,0%)' points='131.414,586.338 131.414,629.582 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='134.572,628.474 134.213,628.65 133.351,629.035 132.833,629.239 132.31,629.416 131.824,629.539 131.414,629.582 131.043,629.539 130.563,629.416 130.023,629.239 129.472,629.035 128.53,628.65 128.13,628.474 131.414,640.474 134.572,628.474 ' />
<g transform='translate(146.414027, 605.406109)'>
<text x='0' y='12' font-size='12px'>π<tspan dy='5px' font-size='10px'>2</tspan></text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='131' cy='649' rx='3.5' ry='3.5' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(100%,100%,100%)' points='131.414,505.135 203.595,469.044 239.686,541.225 167.505,577.316 ' />
<polygon fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(100%,0%,0%)' points='131.414,505.135 203.595,469.044 239.686,541.225 167.505,577.316 ' />
<path stroke='rgb(0%,0%,0%)' stroke-width='0.5px' opacity='1' fill='none' d='M205.488,528.222 A20.1752,20.1752 0 1 0 166.512,528.222' />
<g transform='translate(181.549774, 487.004663)'>
<text x='0' y='12' font-size='12px' font-style='italic'>h</text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='200' cy='537' rx='3.5' ry='3.5' />
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='171' cy='537' rx='3.5' ry='3.5' />
<polyline fill='none' stroke-opacity='1' stroke-width='0.5px' stroke='rgb(0%,0%,0%)' points='166.062,517.958 166.062,522.048 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='167.904,521.402 167.695,521.504 167.192,521.729 166.89,521.848 166.585,521.951 166.301,522.023 166.062,522.048 165.846,522.023 165.566,521.951 165.251,521.848 164.929,521.729 164.38,521.504 164.146,521.402 166.062,528.402 167.904,521.402 ' />
<polyline fill='none' stroke-opacity='1' stroke-width='1px' stroke='rgb(0%,0%,0%)' points='185.55,586.338 185.55,629.582 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='188.708,628.474 188.349,628.65 187.487,629.035 186.969,629.239 186.446,629.416 185.96,629.539 185.55,629.582 185.179,629.539 184.699,629.416 184.159,629.239 183.607,629.035 182.666,628.65 182.266,628.474 185.55,640.474 188.708,628.474 ' />
<g transform='translate(200.549774, 605.406109)'>
<text x='0' y='12' font-size='12px'>π<tspan dy='5px' font-size='10px'>2</tspan></text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='186' cy='649' rx='3.5' ry='3.5' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(100%,100%,100%)' points='185.55,505.135 257.731,469.044 293.821,541.225 221.64,577.316 ' />
<polygon fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(100%,0%,0%)' points='185.55,505.135 257.731,469.044 293.821,541.225 221.64,577.316 ' />
<path stroke='rgb(0%,0%,0%)' stroke-width='0.5px' opacity='1' fill='none' d='M259.488,528.222 A20.1752,20.1752 0 1 0 220.512,528.222' />
<g transform='translate(235.685520, 487.004663)'>
<text x='0' y='12' font-size='12px' font-style='italic'>h</text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='254' cy='537' rx='3.5' ry='3.5' />
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='225' cy='537' rx='3.5' ry='3.5' />
<polyline fill='none' stroke-opacity='1' stroke-width='0.5px' stroke='rgb(0%,0%,0%)' points='220.198,517.958 220.198,522.048 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='222.04,521.402 221.83,521.504 221.328,521.729 221.025,521.848 220.721,521.951 220.437,522.023 220.198,522.048 219.981,522.023 219.701,521.951 219.386,521.848 219.065,521.729 218.516,521.504 218.282,521.402 220.198,528.402 222.04,521.402 ' />
<polyline fill='none' stroke-opacity='1' stroke-width='1px' stroke='rgb(0%,0%,0%)' points='239.686,586.338 239.686,629.582 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='242.843,628.474 242.484,628.65 241.623,629.035 241.104,629.239 240.582,629.416 240.095,629.539 239.686,629.582 239.315,629.539 238.835,629.416 238.294,629.239 237.743,629.035 236.802,628.65 236.401,628.474 239.686,640.474 242.843,628.474 ' />
<g transform='translate(254.685520, 605.406109)'>
<text x='0' y='12' font-size='12px'>π<tspan dy='5px' font-size='10px'>2</tspan></text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='240' cy='649' rx='3.5' ry='3.5' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(100%,100%,100%)' points='510.364,505.135 582.545,469.044 618.636,541.225 546.455,577.316 ' />
<polygon fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(100%,0%,0%)' points='510.364,505.135 582.545,469.044 618.636,541.225 546.455,577.316 ' />
<path stroke='rgb(0%,0%,0%)' stroke-width='0.5px' opacity='1' fill='none' d='M584.488,528.222 A20.1752,20.1752 0 1 0 545.512,528.222' />
<g transform='translate(560.500000, 487.004663)'>
<text x='0' y='12' font-size='12px' font-style='italic'>h</text>
</g>
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='579' cy='537' rx='3.5' ry='3.5' />
<ellipse fill='rgb(0%,0%,0%)' opacity='1' stroke='none' cx='550' cy='537' rx='3.5' ry='3.5' />
<polyline fill='none' stroke-opacity='1' stroke-width='0.5px' stroke='rgb(0%,0%,0%)' points='545.012,517.958 545.012,522.048 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='546.854,521.402 546.645,521.504 546.142,521.729 545.84,521.848 545.535,521.951 545.251,522.023 545.012,522.048 544.796,522.023 544.516,521.951 544.201,521.848 543.879,521.729 543.33,521.504 543.096,521.402 545.012,528.402 546.854,521.402 ' />
<polyline fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='311.867,126.184 474.165,126.184 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='472.319,120.921 472.612,121.52 473.254,122.956 473.595,123.82 473.89,124.69 474.095,125.501 474.165,126.184 474.095,126.803 473.89,127.603 473.595,128.503 473.254,129.422 472.612,130.991 472.319,131.658 492.319,126.184 472.319,120.921 ' />
<g transform='translate(396.592760, 102.184389)'>
<text x='0' y='12' font-size='12px'><tspan font-style='italic'>R</tspan></text>
</g>
<g transform='translate(325.092760, 136.434389)'>
<text x='6' y='12' font-size='12px'>Restrict to action of <tspan font-style='italic'>H</tspan></text>
<text x='0' y='28' font-size='12px'>on a single fiber π<tspan dy='5px' font-size='10px'>1</tspan><tspan dy='-10px' font-size='10px'>–1</tspan><tspan dy='5px'>(</tspan><tspan font-style='italic'>x</tspan>)</text>
</g>
<polyline fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='492.319,487.089 330.021,487.089 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='331.867,492.353 331.573,491.754 330.932,490.318 330.591,489.454 330.296,488.583 330.091,487.773 330.021,487.089 330.091,486.471 330.296,485.671 330.591,484.771 330.932,483.852 331.573,482.283 331.867,481.616 311.867,487.089 331.867,492.353 ' />
<g transform='translate(397.092760, 463.089367)'>
<text x='0' y='12' font-size='12px'><tspan font-style='italic'>L</tspan></text>
</g>
<g transform='translate(319.592760, 499.089367)'>
<text x='12' y='12' font-size='12px'>Construct induced bundle</text>
<text x='24' y='32' font-size='12px'><tspan font-style='italic'>h</tspan> ⋅ (<tspan font-style='italic'>g</tspan>, <tspan font-style='italic'>v</tspan>) = (<tspan font-style='italic'>g h</tspan><tspan dy='-5px' font-size='10px'>–1</tspan><tspan dy='5px'>, </tspan><tspan font-style='italic'>s</tspan>(<tspan font-style='italic'>h</tspan>)<tspan font-style='italic'>v</tspan>)</text>
<text x='24' y='52' font-size='12px'>π<tspan dy='5px' font-size='10px'>2</tspan><tspan dy='-5px'>:</tspan> (<tspan font-style='italic'>G</tspan>×<tspan font-style='italic'>V</tspan>) / <tspan font-style='italic'>H</tspan> → <tspan font-style='italic'>G</tspan> / <tspan font-style='italic'>H</tspan></text>
<text x='24' y='72' font-size='12px'>π<tspan dy='5px' font-size='10px'>2</tspan><tspan dy='-5px'>(〚(<tspan font-style='italic'>g</tspan>, <tspan font-style='italic'>v</tspan>)〛) = <tspan font-style='italic'>g H</tspan></tspan></text>
<text x='24' y='92' font-size='12px'><tspan font-style='italic'>g</tspan><tspan dy='5px' font-size='10px'>1</tspan><tspan dy='-5px'> ⋅ </tspan>〚(<tspan font-style='italic'>g</tspan>, <tspan font-style='italic'>v</tspan>)〛 = 〚(<tspan font-style='italic'>g</tspan><tspan dy='5px' font-size='10px'>1</tspan><tspan dy='-5px' font-style='italic'>g</tspan>, <tspan font-style='italic'>v</tspan>)〛</text>
</g>
<g transform='translate(-10,0)'>
<polyline fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='564.5,198.365 564.5,414.8 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='569.763,412.954 569.165,413.247 567.728,413.888 566.865,414.229 565.994,414.524 565.183,414.729 564.5,414.8 563.882,414.729 563.082,414.524 562.182,414.229 561.263,413.888 559.694,413.247 559.026,412.954 564.5,432.954 569.763,412.954 ' />
</g>
<g transform='matrix(1,0,0,-1,-40,631.319)'>
<polyline fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='564.5,198.365 564.5,414.8 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='569.763,412.954 569.165,413.247 567.728,413.888 566.865,414.229 565.994,414.524 565.183,414.729 564.5,414.8 563.882,414.729 563.082,414.524 562.182,414.229 561.263,413.888 559.694,413.247 559.026,412.954 564.5,432.954 569.763,412.954 ' />
</g>
<g transform='translate(572.400000, 297.159502)'>
<text x='-3' y='12' font-size='12px'>Intertwiner  <tspan font-style='italic'>i*</tspan></text>
<text x='-10' y='32' font-size='12px'><tspan font-style='italic'>i*</tspan> : π<tspan dy='5px' font-size='10px'>1</tspan><tspan dy='-10px' font-size='10px'>–1</tspan><tspan dy='5px'>(</tspan><tspan font-style='italic'>x</tspan>) → <tspan font-style='italic'>V</tspan></text>
<text x='-5' y='52' font-size='12px'><tspan font-style='italic'>i* h</tspan> = <tspan font-style='italic'>h i*</tspan></text>

<text x='-143' y='12' font-size='12px'>Intertwiner  <tspan font-style='italic'>i</tspan></text>
<text x='-150' y='32' font-size='12px'><tspan font-style='italic'>i</tspan> :  <tspan font-style='italic'>V</tspan> →π<tspan dy='5px' font-size='10px'>1</tspan><tspan dy='-10px' font-size='10px'>–1</tspan><tspan dy='5px'>(</tspan><tspan font-style='italic'>x</tspan>)</text>
<text x='-135' y='52' font-size='12px'><tspan font-style='italic'>i h</tspan> = <tspan font-style='italic'>h i</tspan></text>
</g>
<g transform='translate(10,0)'>
<polyline fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='185.55,270.546 185.55,414.8 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='190.813,412.954 190.214,413.247 188.778,413.888 187.915,414.229 187.044,414.524 186.233,414.729 185.55,414.8 184.931,414.729 184.131,414.524 183.231,414.229 182.313,413.888 180.744,413.247 180.076,412.954 185.55,432.954 190.813,412.954 ' />
</g>
<g transform='matrix(1,0,0,-1,40,703.5)'>
<polyline fill='none' stroke-opacity='1' stroke-width='2px' stroke='rgb(0%,0%,0%)' points='185.55,270.546 185.55,414.8 ' />
<polygon stroke='none' opacity='1' fill-rule='evenodd' fill='rgb(0%,0%,0%)' points='190.813,412.954 190.214,413.247 188.778,413.888 187.915,414.229 187.044,414.524 186.233,414.729 185.55,414.8 184.931,414.729 184.131,414.524 183.231,414.229 182.313,413.888 180.744,413.247 180.076,412.954 185.55,432.954 190.813,412.954 ' />
</g>
<g transform='translate(76.749774, 303.250000)'>
<text x='8' y='6' font-size='12px'>Vector bundle</text>
<text x='0' y='22' font-size='12px'>morphism (<tspan font-style='italic'>f*</tspan>, <tspan font-style='italic'>m*</tspan>)</text>
<text x='16' y='42' font-size='12px'><tspan font-style='italic'>f*</tspan> : <tspan font-style='italic'>F</tspan> → <tspan font-style='italic'>L</tspan>(<tspan font-style='italic'>V</tspan>)</text>
<text x='16' y='62' font-size='12px'><tspan font-style='italic'>m*</tspan> : <tspan font-style='italic'>M</tspan> → <tspan font-style='italic'>G</tspan> / <tspan font-style='italic'>H</tspan></text>
<text x='16' y='82' font-size='12px'><tspan font-style='italic'>m*</tspan> π<tspan dy='5px' font-size='10px'>1</tspan><tspan dy='-5px'> = π</tspan><tspan dy='5px' font-size='10px'>2</tspan> <tspan dy='-5px' font-style='italic'>f*</tspan></text>
<text x='16' y='102' font-size='12px'><tspan font-style='italic'>f* g</tspan> = <tspan font-style='italic'>g f*</tspan></text>

<text x='173' y='6' font-size='12px'>Vector bundle</text>
<text x='165' y='22' font-size='12px'>morphism (<tspan font-style='italic'>f</tspan>, <tspan font-style='italic'>m</tspan>)</text>
<text x='181' y='42' font-size='12px'><tspan font-style='italic'>f</tspan> : <tspan font-style='italic'>L</tspan>(<tspan font-style='italic'>V</tspan>) → <tspan font-style='italic'>F</tspan></text>
<text x='181' y='62' font-size='12px'><tspan font-style='italic'>m</tspan> : <tspan font-style='italic'>G</tspan> / <tspan font-style='italic'>H</tspan> → <tspan font-style='italic'>M</tspan></text>
<text x='181' y='82' font-size='12px'><tspan font-style='italic'>m</tspan> π<tspan dy='5px' font-size='10px'>2</tspan><tspan dy='-5px'> = π</tspan><tspan dy='5px' font-size='10px'>1</tspan> <tspan dy='-5px' font-style='italic'>f</tspan></text>
<text x='181' y='102' font-size='12px'><tspan font-style='italic'>f g</tspan> = <tspan font-style='italic'>g f</tspan></text>
</g>
</g>
</svg>


induced representation of the trivial representation

+-- {: .rightHandSide}
+-- {: .toc .clickDown tabindex="0"}
### Context
#### Representation theory
+-- {: .hide}
[[!include representation theory - contents]]
=--
=--
=--

#Contents#
* table of contents
{:toc}

## Statement

Let $G$ be a [[finite group]] and $H \overset{\iota}{\hookrightarrow} G$ a [[subgroup]]-inclusion. Then the [[induced representation]] in [[representation category|Rep(G)]] of the 1-[[dimension|dimensional]] [[trivial representation]] $\mathbf{1} \in Rep(H)$ is the [[permutation representation]] $k[G/H]$ of the [[coset]] [[G-set]] $G/H$:

$$
  \mathrm{ind}_H^G\big( \mathbf{1}\big)
  \;\simeq\;
  k[G/H]
  \,.
$$

This follows directly as a special case of the general formula for [[induced representations]] of [[finite groups]] ([this Example](induced+representation#InductionOfFiniteDimensionalRepresentationsOfFiniteGroups)).

It follows that every [[virtual representation|virtual]] [[permutation representation]] (hence every element of the [[representation ring]] $R_k(G)$ in the [[image]] of the canonical morphism $A(G) \overset{\beta}{\to} R_k(G)$ from the [[Burnside ring]]) is a virtual combination of induced representations of trivial representations.

A generalization of this statement including non-permutation representations is the [[Brauer induction theorem]].

## References

See also

* [Groupprops](https://groupprops.subwiki.org/wiki/Main_Page), _[Induced representation from trivial representation of subgroup is permutation representation for action on coset space](https://groupprops.subwiki.org/wiki/Induced_representation_from_trivial_representation_of_subgroup_is_permutation_representation_for_action_on_coset_space)_

[[!redirects induced representations of the trivial representation]]

[[!redirects induced representation of a trivial representation]]
[[!redirects induced representations of trivial representations]]


induction

> This entry is about induction in the sense of [[logic]]. For induction (functors) in [[representation theory]] see _[[induced module]]_, _[[induced comodule]]_, _[[cohomological induction]]_.

***

+-- {: .rightHandSide}
+-- {: .toc .clickDown tabindex="0"}
### Context
#### Deduction and Induction
+-- {: .hide}
[[!include deduction and induction - contents]]
=--
#### Induction
+-- {: .hide}
[[!include induction - contents]]
=--
=--
=--

#Contents#
* table of contents
{:toc}

## Idea

The **principle of induction** says that if a property of the
[[natural numbers]]

1. is [[true]] for $0 \in \mathbb{N}$;

1. if it is true for $n \in \mathbb{N}$ then it is true for $n+1$;

then it is true for every $n \in \mathbb{N}$. The intuitive notion of a property is in practical mathematics identified with (belonging to) a subset $S\subseteq\mathbb{N}$. Thus the mathematical induction says that if $0\in S$ and if $\forall n\in\mathbb{N}$ $n\in S\implies n+1\in S$ then $S = \mathbb{N}$. This is the way in
the formal Dedekind-Peano arithmetics. Usually in logic one however uses a weaker form of induction which can be stated in a first order language (or in a type theory), namely where one limits to properties given by the predicates $P(n)$ [[dependent type|depending]] on natural numbers. The corresponding conclusion is the [[proposition]] $n \in \mathbb{N} \vdash P(n)$.
The latter version of the principle of induction is weaker because there are only
$\aleph_0$ predicates but $2^{\aleph_0}$ subsets of $\mathbb{N}$.

When formulated in one of the formalizations below, one finds that the principle of induction for propositions depending on natural numbers is the simplest special case of a very general notion of induction over _[[inductive types]]_. Other examples are induction over [[lists]], [[trees]], terms in a [[logic]], and so on.

The [[duality|dual]] notion is that of _[[coinduction]]_.

## Formalization

### By initial algebras over endofunctors

The induction principle may neatly be formalized in terms of the notion of [[initial algebras of an endofunctor]].

In the [[category]] [[Set]], the [[initial algebra]] [[algebra for an endofunctor|for the endofunctor]] $F: X \to 1 + X$ is $\langle 0, s \rangle : 1 + \mathbb{N} \to \mathbb{N}$, where $\mathbb{N}$ is the set of [[natural numbers]], $0$ is the smallest natural number, and $s$ is the [[successor]] operation.

In terms of this the **principle of induction** is equivalent to saying that there is no proper [[subobject|subalgebra]] of $\mathbb{N}$; that is, the only subalgebra is $\mathbb{N}$ itself. This follows from the general property of [[initial objects]] that [[monomorphisms]] to them are [[isomorphisms]].

## Related concepts

* [[transfinite induction]]

* [[deduction]]

* [[inductive type]]

* [[inductive definition]]

* [[recursion]]

## References

* [[Jiří Adámek]], Stefan Milius, Lawrence Moss, _Initial algebras and terminal coalgebras: a survey_ ([pdf](https://www.tu-braunschweig.de/Medien-DB/iti/survey_full.pdf))

* [[Bart Jacobs]], Jan Rutten, _A tutorial on (co)algebras and (co)induction_, [pdf](http://www.cs.ru.nl/~bart/PAPERS/JR.pdf) EATCS Bulletin (1997); extended and updated version: _An introduction to (co)algebras and (co)induction_,  In: D. Sangiorgi and J. Rutten (eds), Advanced topics in bisimulation and coinduction, p.38-99, 2011, [pdf](http://www.cwi.nl/~janr/papers/files-of-papers/2011_Jacobs_Rutten_new.pdf) 62 pp.

* Ch. 3, Formal arithmetics, in: Elliott Mendelson, _Introduction to mathematical logic_, D. Van Nostrad 1964

[[!redirects induction]]
[[!redirects inductions]]

[[!redirects mathematical induction]]

[[!redirects induction principle]]
[[!redirects principle of induction]]

[[!redirects inductive]]

[[!redirects inductive argument]]

[[!redirects induction scheme]]
[[!redirects induction schemes]]
[[!redirects induction schema]]
[[!redirects induction schemata]]
[[!redirects induction schemas]]


induction - contents

* **[[inductive type]]**
* **[[higher inductive type]]**
* **[[coinductive type]]**

## Rules {#sidebar_rules}

* [[induction]], [[coinduction]]
* [[recursion]], [[corecursion]]

## Categorical semantics {#sidebar_categorical_semantics}

* [[initial algebra of an endofunctor]], [[terminal coalgebra of an endofunctor]]

* [[initial algebra of a presentable ∞-monad]]

## Examples {#sidebar_examples}

* [[natural numbers object]], [[natural numbers type]]

* [[list]]

* [[identity type]]

* [[W-type]]

* [[circle type]]

* [[interval type]]


inductive cover

+-- {: .rightHandSide}
+-- {: .toc .clickDown tabindex="0"}
### Context
#### Topology
+-- {: .hide}
[[!include topology - contents]]
=--
#### Type theory
+-- {: .hide}
[[!include type theory - contents]]
=--
=--
=--

\tableofcontents

## Idea

Traditionally, in mathematics and in [[formal topology]] the cover is a relation between elements of a [[poset]] $S$ and [[subtypes]] of $S$. However, that definition is [[impredicative mathematics|impredicative]], since it requires quantifiying over subtypes. There is another definition of a cover as a relation between elements of $S$ and dependent pairs $(I, \mathcal{F})$ consisting of an $U$-small index type $I:U$ and an [[embedding of types]] $\mathcal{F}:I \hookrightarrow S$ from $I$ into $S$. However, this definition requires an existing [[type universe]] $U$ in the type theory, and not all foundations of mathematics have type universes. Nonetheless, one could annotate the cover relation using the index type $I$ of the family $\mathcal{F}:I \hookrightarrow S$, in the same way that one annotates the [[identity types]] of a type with the index type $A$ in the absence of type universes. This results in a type family $z \lhd_I \mathcal{F}$ between elements $z:S$ and embeddings $\mathcal{F}:I \hookrightarrow S$ for every single type $I$, and is akin to using the [[stack semantics]] of the type theory.

## Definition

### For arbitrary formal topologies

Ayberk Tosun in [Tosun 2020](#Tosun20) defined a [[formal topology]] as a [[poset]] $(A, \leq)$ with families of types $x:A \vdash B(x)$, $x:A, y:B(x) \vdash C(x, y)$ and a dependent function

$$d:\prod_{x:A} \prod_{y:B(x)} C(x, y) \to A$$

such that

* for all $x:A$, $y:B(x)$, and $z:C(x, y)$, $d(x, y, z) \leq x$

$$\prod_{x:A} \prod_{y:B(x)} \prod_{z:C(x, y)} d(x, y, z) \leq x$$

* for all $x:A$ and $x':A$, $x' \leq x$ implies that for all $y:B(x)$ one can construct $y':B(x')$ such that for all $z:C(x, y)$, one can construct $z':C(x', y')$ such that $d(x', y', z') \leq d(x, y, z)$.

$$\prod_{x:A} \prod_{x:A'} (a \leq a') \to \prod_{y:B(x)}\sum_{y':B(x')} \prod_{z:C(x, y)} \sum_{z':C(x', y')} d(x', y', z') \leq d(x, y, z)$$

If one has a [[type universe]] $U$, then the locally $U$-small inductive cover relation is given by

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I:U \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash p:\exists x:I.e(x) =_A a}{\Gamma \vdash \mathrm{dir}_U(a, I, e, p):a \lhd_U (I, e)}$$

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I:U \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash b:B(a) \quad \Gamma \vdash f:\prod_{c:C(a, b)} d(a, b, c) \lhd_U (I, e)}{\Gamma \vdash \mathrm{branch}_U(a, I, e, b, f):a \lhd_U (I, e)}$$

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I:U \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash p:a \lhd_U (I, e) \quad \Gamma \vdash q:a \lhd_U (I, e)}{\Gamma \vdash \mathrm{squash}_U(a, I, e, p, q):p =_{a \lhd_U (I, e)} q}$$

If one doesn't have type universes, then given a type $I$, the **[[inductive cover]]** relation for $I$ is a higher inductive type family $a \lhd_I e$ between elements $a:A$ and [[embeddings of types]] $e:I \hookrightarrow A$ generated by the constructors

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash p:\exists x:I.e(x) =_A a}{\Gamma \vdash \mathrm{dir}_I(a, e, p):a \lhd_I e}$$

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash b:B(a) \quad \Gamma \vdash f:\prod_{c:C(a, b)} d(a, b, c) \lhd_I e}{\Gamma \vdash \mathrm{branch}_I(a, e, b, f):a \lhd_I e}$$

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash p:a \lhd_I e \quad \Gamma \vdash q:a \lhd_I e}{\Gamma \vdash \mathrm{squash}_I(a, e, p, q):p =_{a \lhd_I e} q}$$

Families of types $x:A \vdash B(x)$ are equivalently functions $B \to A$, so one can express the above definition in terms of single types. A [[formal topology]] is a poset $(A, \leq)$ with a set $B$, a function $f:B \to A$, a set $C$ with a function $g:C \to B$ and a function $d:C \to A$, such that

* for all $z:C$, $d(z) \leq g(f(z))$

$$\prod_{z:C} d(z) \leq g(f(z))$$

* for all $x:A$ and $x':A$, if $x \leq x'$, then for all $y:B$, $f(y) =_A x$ implies that one can construct a $y':B$ such that $f(y') =_A x'$ implies that for all $z:C$, $g(z) =_B y$ implies that one can construct a $z':C$ such that $g(z') =_B y'$ implies $d(z') \leq d(z)$.

$$\prod_{x:A} \prod_{x:A'} (a \leq a') \to \prod_{y:B} (f(y) =_A x) \to \sum_{y':B} (f(y') =_A x') \to \prod_{z:C} (g(z) =_B y) \to \sum_{z':C} (g(z') =_B y') \to (d(z') \leq d(z))$$

If one has a [[type universe]] $U$, then the locally $U$-small inductive cover relation is given by

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I:U \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash p:\exists x:I.e(x) =_A a}{\Gamma \vdash \mathrm{dir}_U(a, I, e, p):a \lhd_U (I, e)}$$

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I:U \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash b:B \quad \Gamma \vdash p:f(b) =_A a \quad \Gamma \vdash h:\prod_{c:C} (g(c) =_B b) \to (d(c) \lhd_U (I, e))}{\Gamma \vdash \mathrm{branch}_U(a, I, e, b, p, h):a \lhd_U (I, e)}$$

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I:U \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash p:a \lhd_U (I, e) \quad \Gamma \vdash q:a \lhd_U (I, e)}{\Gamma \vdash \mathrm{squash}_U(a, I, e, p, q):p =_{a \lhd_U (I, e)} q}$$

If one doesn't have type universes, then given given a type $I$, the cover relation for $I$ is a higher inductive type family $a \lhd_I e$ between elements $a:A$ and [[embeddings of types]] $e:I \hookrightarrow A$ generated by the constructors

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash p:\exists x:I.e(x) =_A a}{\Gamma \vdash \mathrm{dir}_I(a, e, p):a \lhd_I e}$$

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash b:B \quad \Gamma \vdash p:f(b) =_A a \quad \Gamma \vdash h:\prod_{c:C} (g(c) =_B b) \to (d(c) \lhd_I e)}{\Gamma \vdash \mathrm{branch}_I(a, e, b, p, h):a \lhd_I e}$$

$$\frac{\Gamma \vdash a:A \quad \Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash e:I \hookrightarrow A \quad \Gamma \vdash p:a \lhd_I e \quad \Gamma \vdash q:a \lhd_I e}{\Gamma \vdash \mathrm{squash}_I(a, e, p, q):p =_{a \lhd_I e} q}$$

### For the real numbers

For covers over the [[real numbers]], one can use a generalized defintion and simply work with pairs of ratonal numbers numbers $(q, r):\mathbb{Q} \times \mathbb{Q}$ and arbitrary functions $\mathcal{F}:I to \mathbb{Q} \times \mathbb{Q}$ instead of embeddings.

We first define the following relations and operations on pairs of rational numbers:

$$q:\mathbb{Q}, r:\mathbb{Q}, s:\mathbb{Q}, t:\mathbb{Q} \vdash (q, r) \subseteq (s, t) \coloneqq (q \lt r) \to ((s \leq q) \times (r \leq t))$$

$$q:\mathbb{Q}, r:\mathbb{Q}, s:\mathbb{Q}, t:\mathbb{Q} \vdash (q, r) \Subset (s, t) \coloneqq (q \lt r) \to ((s \lt q) \times (r \lt t))$$

$$q:\mathbb{Q}, r:\mathbb{Q}, s:\mathbb{Q}, t:\mathbb{Q} \vdash (q, r) \cap (s, t) \coloneqq (\min(q, s), \max(r, t)):\mathbb{Q} \times \mathbb{Q}$$

The inductive covers are generated by the following inference rules:

Formation rules for inductive covers:
$$\frac{\Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash z:\mathbb{Q} \times \mathbb{Q} \quad \Gamma \vdash \mathcal{F}:I \to \mathbb{Q} \times \mathbb{Q}}{\Gamma \vdash z \lhd_I \mathcal{F} \; \mathrm{type}}$$

Introduction rules for inductive covers:

$$\frac{\Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash \mathcal{F}:I \to \mathbb{Q} \times \mathbb{Q} \quad \Gamma \vdash z:\mathbb{Q} \times \mathbb{Q}}{\Gamma, p:z \lhd_I \mathcal{F}, q:z \lhd_I \mathcal{F} \vdash \mathrm{proptrunc}(\mathcal{F}, z, p, q):p =_{z \lhd_I \mathcal{F}} q}$$

$$\frac{\Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash \mathcal{F}:I \to \mathbb{Q} \times \mathbb{Q} \quad \Gamma \vdash i:I}{\Gamma \vdash \mathrm{refl}_I(\mathcal{F}, i):\mathcal{F}(i) \lhd_I \mathcal{F}}$$

$$\frac{\Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash J \; \mathrm{type} \quad \Gamma \vdash \mathcal{F}:I \to \mathbb{Q} \times \mathbb{Q} \quad \Gamma \vdash \mathcal{G}:I \to \mathbb{Q} \times \mathbb{Q} \quad z:\mathbb{Q} \times \mathbb{Q}}{\Gamma \vdash \mathrm{trans}_{I, J}(z, \mathcal{F}, \mathcal{G}):\left(\prod_{i:I} \mathcal{F}(i) \lhd_J \mathcal{G}\right) \to (z \lhd_I \mathcal{F}) \to (z \lhd_J \mathcal{G})}$$

$$\frac{\Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash \mathcal{F}:I \to \mathbb{Q} \times \mathbb{Q} \quad \Gamma \vdash z:\mathbb{Q} \times \mathbb{Q} \quad \Gamma \vdash w:\mathbb{Q} \times \mathbb{Q}}{\Gamma \vdash \mathrm{mono}_I(\mathcal{F}, z, w):(z \subseteq w) \to (w \lhd_I \mathcal{F}) \to (z \lhd_I \mathcal{F})}$$

$$\frac{\Gamma \vdash I \; \mathrm{type} \quad \Gamma \vdash \mathcal{F}:I \to \mathbb{Q} \times \mathbb{Q} \quad \Gamma \vdash z:\mathbb{Q} \times \mathbb{Q} \quad \Gamma \vdash w:\mathbb{Q} \times \mathbb{Q}}{\Gamma \vdash \mathrm{local}_I(\mathcal{F}, z, w):(z \lhd_I \mathcal{F}) \to (z \cap w) \lhd_I (\lambda i:I.\mathcal{F}(i) \cap w)}$$

$$\frac{\Gamma \vdash q:\mathbb{Q} \quad \Gamma \vdash r:\mathbb{Q} \quad \Gamma \vdash s:\mathbb{Q} \quad \Gamma \vdash t:\mathbb{Q}}{\Gamma \vdash \mathrm{overlap}(q, r, s, t):((s, t) \Subset (q, r)) \to (q, r) \lhd_\mathbb{2} \mathrm{rec}_\mathbb{2}^{\mathbb{Q} \times \mathbb{Q}}((q, t), (s, r))}$$

$$\frac{\Gamma \vdash z:\mathbb{Q} \times \mathbb{Q}}{\Gamma \vdash \mathrm{within}(z):z \lhd_{\sum_{w:\mathbb{Q} \times \mathbb{Q}} w \Subset z} \lambda u.u}$$

Elimination rules for inductive covers:

...

Computation rules for inductive covers:

...

## Properties

The [[Heine-Borel theorem]] holds for inductive covers.

Every inductive cover on the [[real numbers]] is a pointwise cover on the [[real numbers]]. Assuming excluded middle, every pointwise cover is an inductive cover.

## See also

* [[cover]]

* [[inductive family]]

* [[formal topology]]

## References

* *Homotopy Type Theory: Univalent Foundations of Mathematics*, The [[Univalent Foundations Project]], Institute for Advanced Study, 2013. ([web](http://homotopytypetheory.org/book/), [pdf](http://hottheory.files.wordpress.com/2013/03/hott-online-323-g28e4374.pdf))

* {#Tosun20} Ayberk Tosun, _Formal Topology in Univalent Foundations_, ([pdf](https://odr.chalmers.se/handle/20.500.12380/301098), [slides](https://www.cs.bham.ac.uk/~axt978/talks/lab-lunch-formal-topology.pdf))

[[!redirects inductive cover]]
[[!redirects inductive covers]]

[[!redirects inductive cover relation]]
[[!redirects inductive cover relations]]


inductive definition

+-- {: .rightHandSide}
+-- {: .toc .clickDown tabindex="0"}
### Context
#### Induction
+-- {: .hide}
[[!include induction - contents]]
=--
=--
=--

#Contents#
* table of contents
{:toc}

## Idea

An _inductive definition_ is a [[definition]] by [[induction]]/[[recursion]].

## Definition

In [[type theory]], inductive and recursive definitions are made on [[inductive types]] through the [[computation rules]] for the inductive type. However, since there are multiple possible [[equalities]] which could be used for [[computation rules]], there are multiple computation rules which could be used in inductive definitions: computation rules involving [[judgmental equality]], [[propositional equality]], and [[typal equality]] are all possible. For example, addition is usually defined by recursion on the natural numbers, and since the natural numbers comes with two computation rules, addition comes with an introduction rule and two computation rules, one for the base case $0$ and one for the inductive case $s$ the successor function; and the computation rules come in judgmental, propositional, and typal flavours as well:

* Introduction and judgmental computation rules for addition $+$:

$$\frac{\Gamma \vdash \mathbb{N} \; \mathrm{type} \quad \Gamma \vdash m:\mathbb{N} \quad \Gamma \vdash n:\mathbb{N}}{\Gamma \vdash m + n:\mathbb{N}} \qquad \frac{\Gamma \vdash \mathbb{N} \; \mathrm{type} \quad \Gamma \vdash n:\mathbb{N}}{\Gamma \vdash 0 + n = n:\mathbb{N}} \qquad \frac{\Gamma \vdash \mathbb{N} \; \mathrm{type}\quad \Gamma \vdash m:\mathbb{N} \quad \Gamma \vdash n:\mathbb{N}}{\Gamma \vdash s(m) + n = s(m + n):\mathbb{N}}$$

* Introduction and propositional computation rules for addition $+$:

$$\frac{\Gamma \vdash \mathbb{N} \; \mathrm{type} \quad \Gamma \vdash m:\mathbb{N} \quad \Gamma \vdash n:\mathbb{N}}{\Gamma \vdash m + n:\mathbb{N}} \qquad \frac{\Gamma \vdash \mathbb{N} \; \mathrm{type} \quad \Gamma \vdash n:\mathbb{N}}{\Gamma \vdash 0 + n =_\mathbb{N} n \; \mathrm{true}} \qquad \frac{\Gamma\vdash \mathbb{N} \; \mathrm{type}\quad \Gamma \vdash m:\mathbb{N} \quad \Gamma \vdash n:\mathbb{N}}{\Gamma \vdash s(m) + n =_\mathbb{N} s(m + n) \; \mathrm{true}}$$

* Introduction and typal computation rules for addition $+$:

$$\frac{\Gamma \vdash \mathbb{N} \; \mathrm{type} \quad \Gamma \vdash m:\mathbb{N} \quad \Gamma \vdash n:\mathbb{N}}{\Gamma \vdash m + n:\mathbb{N}} \qquad \frac{\Gamma \vdash \mathbb{N} \; \mathrm{type} \quad \Gamma \vdash n:\mathbb{N}}{\Gamma \vdash \beta_{+}^0(n):0 + n =_\mathbb{N} n} \qquad \frac{\Gamma \vdash \mathbb{N} \; \mathrm{type}\quad \Gamma \vdash m:\mathbb{N} \quad \Gamma \vdash n:\mathbb{N}}{\Gamma \vdash \beta_{+}^s(m, n):s(m) + n =_\mathbb{N} s(m + n)}$$

Another example of an inductive definition is the definition of the [[transport]] function, which is given by the following introduction and computation rules:

* Introduction and judgmental computation rules for the transport function $\mathrm{tr}$:

$$\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash a:A \quad \Gamma \vdash b:A \quad \Gamma \vdash p:a =_A b \quad \Gamma, x:A, \Delta \vdash B \; \mathrm{type}}{\Gamma, \Delta[b/x] \vdash \mathrm{tr}(x.B, a, b, p):B[a/x] \simeq B[b/x]}$$

$$\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash a:A \quad \Gamma, x:A, \Delta \vdash B \; \mathrm{type}}{\Gamma, \Delta[a/x] \vdash \mathrm{tr}(x.B, a, a, \mathrm{refl}_A(a)) = \mathrm{id}_{B[a/x]}:B[a/x] \simeq B[a/x]}$$

* Introduction and propositional computation rules for the transport function $\mathrm{tr}$:

$$\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash a:A \quad \Gamma \vdash b:A \quad \Gamma \vdash p:a =_A b \quad \Gamma, x:A, \Delta \vdash B \; \mathrm{type}}{\Gamma, \Delta[b/x] \vdash \mathrm{tr}(x.B, a, b, p):B[a/x] \simeq B[b/x]}$$

$$\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash a:A \quad \Gamma, x:A, \Delta \vdash B \; \mathrm{type}}{\Gamma, \Delta[a/x] \vdash \mathrm{tr}(x.B, a, a, \mathrm{refl}_A(a)) =_{B[a/x] \simeq B[a/x]} \mathrm{id}_{B[a/x]} \; \mathrm{true}}$$

* Introduction and typal computation rules for the transport function $\mathrm{tr}$:

$$\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash a:A \quad \Gamma \vdash b:A \quad \Gamma \vdash p:a =_A b \quad \Gamma, x:A, \Delta \vdash B \; \mathrm{type}}{\Gamma, \Delta[b/x] \vdash \mathrm{tr}(x.B, a, b, p):B[a/x] \simeq B[b/x]}$$

$$\frac{\Gamma \vdash A \; \mathrm{type} \quad \Gamma \vdash a:A \quad \Gamma, x:A, \Delta \vdash B \; \mathrm{type}}{\Gamma, \Delta[a/x] \vdash \beta_\mathrm{tr}^{\mathrm{refl}_A}(x.B, a):\mathrm{tr}(x.B, a, a, \mathrm{refl}_A(a)) =_{B[a/x] \simeq B[a/x]} \mathrm{id}_{B[a/x]}}$$

## Related concepts

* [[inductive type]]

* [[computation rule]]

* [[coinductive definition]]

## References

* [[Peter Aczel]], _An introduction to inductive definitions_ In Jon Barwise, editor, _Handbook of Mathematical Logic_, chapter C.7, pages 783–818. North-Holland, 1977.

A textbook account is in section I.2 of

* [[Robert Harper]], _[[Practical Foundations for Programming Languages]]_

[[!redirects inductive definition]]
[[!redirects inductive definitions]]

[[!redirects inductively define]]
[[!redirects inductively defined]]


inductive dimension

#Contents#
* table of contents
{:toc}

## Idea

The small and large inductive dimensions, together with the Lebesgue [[covering dimension]] are the three main notions of [[dimension]] for [[topological spaces]].
They coincide in some, but not all, cases.

## Small inductive dimension

The __small inductive dimension__ (alias __Menger–Urysohn dimension__) $ind(X)$
of a [[regular topological space]] $X$ is defined as follows:
$ind(\emptyset)=-1$
and $ind(X)\le n$ ($n\ge0$) if for any $x\in X$ and any [[neighborhood]] $V\subset X$ of $x$ there is an [[open subset]] $U\subset X$ such that $x\in U$, $U\subset V$,
and $ind(\bar U\setminus U)\le n-1$.

## Large inductive dimension

The __large inductive dimension__ (alias __Brouwer–Čech dimension__) $Ind(X)$ of a [[normal topological space]] $X$
is defined as follows: $Ind(\emptyset)=-1$
and $Ind(X)\le n$ ($n\ge0$) if for any [[closed subset]] $A\subset X$
and any [[open subset]] $V\subset X$ such that $A\subset V$
there is an [[open subset]] $U\subset X$ such that $A\subset U\subset V$
and $Ind(\bar U\setminus U)\le n-1$.

## Properties

The subspace theorem: for every subspace $M$ of a [[regular space]] $X$ we have $ind(M)\le ind(X)$.
(Theorem 1.1.2 in [Engelking95](#Engelking95).)

## Related concepts

[[!include notions of dimension -- contents]]

## References

* {#Engelking78} [[Ryszard Engelking]], _Dimension Theory_, Mathematical Library **19**, North-Holland Publishing/Polish Scientific Publishers 1978 ([pdf](https://www.maths.ed.ac.uk/~v1ranick/papers/engelking.pdf))

* {#Engelking95} [[Ryszard Engelking]], _Theory of Dimensions -- Finite and Infinite_, Sigma Series in Pure Mathematics **10**, Helderman 1995 ([pdf](http://www.gbv.de/dms/goettingen/187241074.pdf))


inductive family

+-- {: .rightHandSide}
+-- {: .toc .clickDown tabindex="0"}
### Context
#### Deduction and Induction
+-- {: .hide}
[[!include deduction and induction - contents]]
=--
#### Type theory
+-- {: .hide}
[[!include type theory - contents]]
=--
#### Induction
+-- {: .hide}
[[!include induction - contents]]
=--
=--
=--

#Contents#
* table of contents
{:toc}

## Idea

_Inductive families_ generalize [[inductive types]]. Instead of defining a single type inductively, one simultaneously defines a whole family of types. An alternative term is "indexed inductive definition".

A simple example of an inductive family is the type of vectors Vect n indexed by the dimension n. This is defined by two constructors: one for the empty vector of dimension 0, and another for the operation which constructs a vector of dimension n+1 by adding a component to a vector of dimension n. The [[family of finite types]] Fin n (indexed by n) can also be defined as an inductive family: the constructor 0 is in any Fin n, and there is a successor operation which constructs an element in Fin (n+1) from an element in Fin n.

By the identification of [[propositions as types]], inductive families correspond to inductively defined predicates. For example, the [[identity type]] on a type A can be defined inductively by the reflexivity rule stipulating that a is identical to a for any a : A, that is, identity is the least reflexive relation. The identity family of types in intuitionistic type theory results from the identification of this relation with a family of types.

## Examples

* The identity types of an indexed W-type are another indexed W-type.  This has been formalized by [Huginin](#Huginin).

* The [[inductive covers]] in [[formal topology]] and [[real analysis]] are an example of a [[higher inductive type|higher]] inductive family.

## Semantics

Standard inductive types, [[W-types]] can be interpreted in any topos with [[natural numbers object]] (Moerdijk-Palmgren). Gambino and Hyland construct initial algebras for dependent [[polynomial functors]]. [Indexed containers](#AGHMM) are the same as dependent polynomial functors.
[Indexed containers](#AGHMM) are claimed to form a foundation for inductive families.

## Higher categorical version/ homotopy type theory

[van den Berg and Moerdijk](#vdBergMoerdijk13) show that (standard) W-types can be interpreted in certain [[model categories]].

## Reduction to ordinary W-types

In [[homotopy type theory]] with [[universes]], one can reduce indexed W-types to W-types. This has been formalized [here](https://github.com/pcapriotti/agda-base/blob/master/src/container/w/core.agda), [here](https://github.com/SkySkimmer/HoTTClasses/blob/inductives/theories/theory/inductives.v) and [here](#Hugunin).
[Sattler](#Sattler) outlines a generalization of the reduction to [[homotopy type theory]] without the need of universes.

## References {#References}

[[!include history of inductive types -- references]]

### Further developments

* {#AGHMM} [[Thorsten Altenkirch]], [[Neil Ghani]], Peter Hancock, Conor McBride, and Peter Morris, _Indexed containers_ ([pdf](http://strictlypositive.org/indexed-containers.pdf))

* [[Nicola Gambino]] and [[Martin Hyland]], *Wellfounded Trees and Dependent Polynomial Functors* [PDF](https://www.irif.fr/~mellies/mpri/mpri-ens/articles/gambino-hyland-polynomial-functors.pdf)

* [[Benno van den Berg]], [[Ieke Moerdijk]], _W-types in Homotopy Type Theory_ ([arXiv:1307.2765](http://arxiv.org/abs/1307.2765)) {#vdBergMoerdijk13}

* {#Sattler} [[Christian Sattler]], _On relating indexed W-types with ordinary ones_ [slides](http://cs.ioc.ee/types15/slides/sattler-slides.pdf)

* {#Hugunin} [[Jasper Hugunin]], _IWTypes_, <https://github.com/jashug/IWTypes>

[[!redirects inductive families]]
[[!redirects indexed inductive definition]]
[[!redirects indexed inductive type]]
[[!redirects indexed inductive types]]
[[!redirects indexed W-type]]
[[!redirects indexed W-types]]


inductive limit

+-- {: .rightHandSide}
+-- {: .toc .clickDown tabindex="0"}
### Context
#### Category theory
+-- {: .hide}
[[!include category theory - contents]]
=--
#### Limits and colimits
+-- {: .hide}
[[!include infinity-limits - contents]]
=--
=--
=--

#Contents#
* table of contents
{:toc}

## Idea

Generally, an __inductive limit__ is the same thing as a [[colimit]].  (Similarly, a [[projective limit]] is the same thing as a [[limit]].)  In this context, an __inductive system__ is the same thing as a [[diagram]], and an __inductive cone__ is the same thing as a [[cocone]].

However, many authors restrict this terminology to colimits over [[directed sets]] (or [[filtered categories]]), especially the directed set $(\mathbb{N},\leq)$ of [[natural numbers]]; see [[directed colimit]] (or [[filtered colimit]]) for discussion of this case if you think that it may be what you want.

The dual concept is that of a _[[projective limit]]_.

## Related concepts

* [[ind-object]], [[pro-object]]

* [[direct limit]], another terminology for colimit

[[!redirects inductive limit]]
[[!redirects inductive limits]]

[[!redirects inductive system]]
[[!redirects inductive systems]]

[[!redirects inductive cone]]
[[!redirects inductive cones]]


inductive limit > history

< [[inductive limit]]
[[!redirects inductive limit -- history]]


inductive reasoning

+-- {: .rightHandSide}
+-- {: .toc .clickDown tabindex="0"}
### Context
#### Deduction and Induction
+-- {: .hide}
[[!include deduction and induction - contents]]
=--
#### Philosophy
+-- {: .hide}
[[!include philosophy - contents]]
=--
=--
=--

# Inductive reasoning
* table of contents
{: toc}

## Idea

Inductive [[reasoning]] concerns assessments of how likely a statement is to be true, given observations of its consequences. In the classical concept of induction, once enough specific instances $P(a), P(b), P(c)$ have been verified (with no instance $\neg{P(k)}$), we are justified in concluding the [[universal quantification|universally quantified statement]] $\forall x,\, P(x)$, or at least one of its consequences $P(k)$.  Stated as a [[rule of inference]] this appears as follows:
\[ \array {
             & \vdash & P(a) \\
             & \vdash & P(b) \\
             & \vdash & P(c) \\
             & \vdots \\
   k\colon S & \vdash & P(k)
   } \label{RoI} \]
Here, the list of [[premise]]s is finite, possibly long but still [[feasible number|feasible]] (at least in an informal sense), while the size of the set $S$ may be infeasibly large (or indeed [[infinite set|infinite]]).

Not everybody holds that inductive reasoning occurs. [[Karl Popper]] famously claimed that "Induction, i.e. inference based on many observations, is a myth. It is neither a psychological fact, nor a fact of ordinary life, nor one of scientific procedure." (Conjectures and Refutations, p. 53). This claim was made primarily about the process of coming to believe in a universal law from the observation of a finite number of instances.

## Mathematical induction
 {#MathematicalInduction}

There is no problem if one can be sure that one is sampling a _complete_ list of instances of a general law. From that one may indeed _induce_ the general law through _[[deductive reasoning|deductive]]_ reasoning. This is _[[induction|mathematical induction]]_.

The simplest case is induction over a [[finite set]]; if we add the premise
$$ k\colon S \vdash k = a \;\vee\; k = b \;\vee\; k = c \;\vee\; \cdots $$
to the rule \eqref{RoI}, then it becomes a valid deduction (in, say, [[minimal logic]]).  That is, we have actually checked every case, and the universal statement is induced deductively.

A subtler but classic case is induction over the [[natural numbers]]: if one knows that a statement about elements of the set $\mathbb{N}$ holds for the element $0$ and if one knows that if the statement holds for any $n \in \mathbb{N}$, then it also holds for $n+1$, then one can in fact be certain that it holds for each and every $n \in \mathbb{N}$, and again the universal statement is induced deductively.

This is reflected for instance in the German use of the word: in German, _Induktion_ refers to inductive reasoning, but the mathematical induction over the natural numbers is mandatorily called _[vollständige Induktion](http://de.wikipedia.org/wiki/Vollst%C3%A4ndige_Induktion)_: complete induction.

As explained at _[[induction|mathematical induction]]_, there is a large class of "complete inductions" available in mathematics. In the notion of _[[inductive types]]_, this concept reaches down to the very [[foundations]] of mathematics.

## As Bayesian probability
 {#AsBayesianProbability}

Another approach is to couch inductive reasoning in terms of [[probability theory]].  If we change the conclusions of the sequents in \eqref{RoI} from truth to high [[probability|probabilities]], then the inference may be valid; however, the exact calculation requires the use of [[Bayes's rule]] and depends on the background information.

With [[deductive reasoning]], once I derive (say) $Q$ from $P$ and $P \Rightarrow Q$, my learning new facts does not affect the derivation.  When I reason inductively, however, changes to background knowledge frequently cause me to alter my inferences. For example, from observations that ten fish caught randomly from a pond are trout, I may assess the claim that all fish in the pond are trout as having a certain probability. But learning about the number of fish species present in other ponds nearby (even without observing any more fish from the pond in question) may cause me to alter this assessment. It is clear that many factors may have a bearing on our assessment of a degree of belief.

Interestingly, one of the first people to give a qualitative sketch of how such an approach would work was [[George Polya]] in 'Mathematics and Plausible Reasoning' ([Polya](#Polya)), where examples from mathematics are widely used. The idea of a Bayesian account of plausible reasoning in mathematics surprises many, it being assumed that mathematicians rely solely on [[deductive reasoning|deduction]].

See [[Bayesian reasoning]].

## Related concepts

* [[deductive reasoning]]

* [[Bayesian reasoning]]

## References

* [[Edwin Jaynes]], 2003, _Probability Theory: The Logic of Science_, Cambridge University Press, ([web](http://omega.albany.edu:8008/JaynesBook.html)).

* [[George Polya]], 1954, _Mathematics and Plausible Reasoning, Volume 2:
Patterns of Plausible Inference_, Princeton University Press.
 {#Polya}

Chapter 4 of

* [[David Corfield]], 2003, _Towards a Philosophy of Real Mathematics_, Cambridge University Press.

From the [[nPOV]], of interest is

* [[Bob Coecke]], [[Robert Spekkens]]' _Picturing classical and quantum Bayesian inference_ ([pdf](http://www.cs.ox.ac.uk/people/bob.coecke/PDFS/05-Coecke-Spekkens.pdf)).

[[!redirects inductive reasoning]]
[[!redirects inductive inference]]
[[!redirects inductive logic]]


inductive tensor product

+-- {: .rightHandSide}
+-- {: .toc .clickDown tabindex="0"}
### Context
#### Functional analysis
+-- {: .hide}
[[!include functional analysis - contents]]
=--
#### Monoidal categories
+-- {: .hide}
[[!include monoidal categories - contents]]
=--
=--
=--

* table of contents
{: toc}

## Idea

In [[functional analysis]], the _inductive tensor product_ is a kind of [[tensor product]] suitable for [[topological vector spaces]].

Specifically, the **inductive tensor product** $E\otimes_i F$ of a pair of [[topological vector spaces]] $E$, and $F$ is the target of the [[universal construction|universal]] separately [[continuous function|continuous]] [[bilinear map]] $E\times F \to E\otimes_i F$.

## Definition

Given a pair of [[locally convex topological vector spaces]] (lctvs) $E$ and $F$, the inductive tensor product is the locally convex [[topological vector space|tvs]] $E\otimes_i F$ with underlying plain [[vector space]] the algebraic [[tensor product of vector spaces]], and equipped with the finest locally convex linear [[topological space|topology]] such that $E\times F \to E\otimes_i F$ is separately [[continuous function|continuous]], where $E\times F$ has the [[product topology]]. The definition is due to ([Grothendieck 1955](#Groth55), Définition 3 in I \S 3.I)

Compare this to the (pre-completed) projective tensor product $\otimes_p$, which is equipped with the finest locally convex linear topology such that the canonical map from $E\times F$ is _jointly_ continuous.

Sometimes one will wish to consider this tensor product in the category of _complete_ lctvs, and so the result is the topological completion $E\overline{\otimes} F$ of $E\otimes_i F$ (eg by adding in the limits of Cauchy [[nets]]), which is the analogue of the (complete) projective tensor product $\widehat{\otimes}$.

## Properties

Let $lctvs$ denote the category of locally convex topological vector spaces and bounded maps, and $lcvts_{comp}$ the [[reflective subcategory]] of complete lctvs.

+-- {: .un_theorem}
###### Theorem

The inductive tensor product functor $\otimes_i\colon lctvs \times lctvs \to lctvs$ separately preserves [[inductive limits]]. Moreover $\otimes_i$ equips $lctvs$ with the structure of a [[symmetric monoidal category]], and even a symmetric [[closed monoidal category]], by equipping the space of continuous maps with the topology of pointwise convergence.

=--

Be aware though that the completed inductive tensor product $\overline{\otimes}$ does _not_ make $lctvs_{comp}$ into a monoidal category, as coherent associativity fails.

+-- {: .num_prop #whenSeparatelyCtsBilinearMapsAreCts}
###### Proposition

Let $E$ and $F$ be metrizable tvs, and $T\colon E\times F \to G$ a separately continuous bilinear function. If one of the following conditions is true

1. $E$ is a Baire space (for example, _completely_ metrizable)
1. $E$ is a [[barreled topological vector space]] (eg is a [[Frechet space]]) and $G$ is locally convex.

then $T$ is jointly continuous.

=--

For a proof see ([Schaefer-Wolff 1999](#Schaeffer-Wolff), corollary to Theorem 5.1)

Notice that there are canonical comparison maps $E\otimes_i F \to E\otimes_p F$ and $E\overline{\otimes} F \to E \widehat{\otimes} F$.

+-- {: .un_theorem}
###### Theorem

Let $E$ and $F$ be metrizable lctvs, and assume one of the conditions in Proposition \ref{whenSeparatelyCtsBilinearMapsAreCts} holds. Then the comparison maps from the inductive tensor products to the projective tensor products are isomorphisms.

=--

+-- {: .un_prop}
###### Corollary

If $E$ and $F$ are [[Fréchet spaces]], then $E\overline{\otimes} F \stackrel{\sim}{\to} E \widehat{\otimes} F$.

=--

Hence for Banach spaces and Hilbert spaces the inductive tensor product also agrees with the projective tensor product. It is for this reason that one can define [[locally convex algebra]]s with the inductive tensor product, as this reduces the the usual jointly-continuous multiplication for Banach algebras, $C^*$-algebras etc.

## Related pages

* [[spatial tensor product]]
* [[tensor product of Banach spaces]]

## References

* {#Groth55} [[Alexandre Grothendieck]], _Produits tensoriels topologiques et spaces nucléaires_, Memoirs AMS **16** (1955)

* {#Schaeffer-Wolff} Schaeffer, Wolff, _Topological Vector Spaces_, Graduate Texts in Mathematics **3** (1999) Springer.