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.
Instances For
Set.mulIndicator s f a
is f a
if a ∈ s
, 1
otherwise.
Instances For
Set.indicator
as an addMonoidHom
.
Equations
- Set.indicatorHom M s = { toFun := s.indicator, map_zero' := ⋯, map_add' := ⋯ }
Instances For
Set.mulIndicator
as a monoidHom
.
Equations
- Set.mulIndicatorHom M s = { toFun := s.mulIndicator, map_one' := ⋯, map_mul' := ⋯ }