Indicator function #
Set.indicator (s : Set α) (f : α → β) (a : α)
isf a
ifa ∈ s
and is0
otherwise.Set.mulIndicator (s : Set α) (f : α → β) (a : α)
isf a
ifa ∈ s
and is1
otherwise.
Implementation note #
In mathematics, an indicator function or a characteristic function is a function
used to indicate membership of an element in a set s
,
having the value 1
for all elements of s
and the value 0
otherwise.
But since it is usually used to restrict a function to a certain set s
,
we let the indicator function take the value f x
for some function f
, instead of 1
.
If the usual indicator function is needed, just set f
to be the constant function fun _ ↦ 1
.
The indicator function is implemented non-computably, to avoid having to pass around Decidable
arguments. This is in contrast with the design of Pi.single
or Set.piecewise
.
Tags #
indicator, characteristic
Set.indicator s f a
is f a
if a ∈ s
, 0
otherwise.
Equations
- Set.indicator s f x = if x ∈ s then f x else 0
Instances For
Set.mulIndicator s f a
is f a
if a ∈ s
, 1
otherwise.
Equations
- Set.mulIndicator s f x = if x ∈ s then f x else 1
Instances For
If an additive indicator function is not equal to 0
at a point, then that point is
in the set.
If a multiplicative indicator function is not equal to 1
at a point, then that point is in the
set.
Set.indicator
as an addMonoidHom
.
Equations
- Set.indicatorHom M s = { toZeroHom := { toFun := Set.indicator s, map_zero' := ⋯ }, map_add' := ⋯ }
Instances For
Set.mulIndicator
as a monoidHom
.
Equations
- Set.mulIndicatorHom M s = { toOneHom := { toFun := Set.mulIndicator s, map_one' := ⋯ }, map_mul' := ⋯ }