The kernel definitional equality test (t =?= s) has special support for id_delta applications. It implements the following rules
- (id_delta t) =?= t
 - t =?= (id_delta t)
 - (id_delta t) =?= s IF (unfold_of t) =?= s
 - t =?= id_delta s IF t =?= (unfold_of s)
 
This is mechanism for controlling the delta reduction (aka unfolding) used in the kernel.
We use id_delta applications to address performance problems when type checking lemmas generated by the equation compiler.
Instances for punit
        
        - punit.has_sizeof
 - unit.has_repr
 - unit.has_to_string
 - unit.has_to_format
 - punit.reflect
 - option_t.monad_except
 - punit.subsingleton
 - punit.inhabited
 - punit.unique
 - punit.reflect'
 - punit.linear_order
 - punit.densely_ordered
 - punit.biheyting_algebra
 - punit.boolean_algebra
 - punit.complete_boolean_algebra
 - unit.fintype
 - punit.fintype
 - punit.comm_group
 - punit.add_comm_group
 - punit.comm_ring
 - punit.cancel_comm_monoid_with_zero
 - punit.normalized_gcd_monoid
 - punit.canonically_ordered_add_monoid
 - punit.linear_ordered_cancel_add_comm_monoid
 - punit.linear_ordered_add_comm_monoid_with_top
 - punit.has_smul
 - punit.has_vadd
 - punit.is_central_scalar
 - punit.is_central_vadd
 - punit.smul_comm_class
 - punit.vadd_comm_class
 - punit.is_scalar_tower
 - punit.vadd_assoc_class
 - punit.smul_with_zero
 - punit.mul_action
 - punit.distrib_mul_action
 - punit.mul_distrib_mul_action
 - punit.mul_semiring_action
 - punit.mul_action_with_zero
 - punit.module
 - punit.countable
 - punit.encodable
 - punit.algebra
 - punit.topological_space
 - punit.discrete_topology
 - punit.bornology
 - punit.uniform_space
 - punit.metric_space
 - punit.normed_add_comm_group
 - punit.normed_comm_ring
 - punit.normed_algebra
 - fin_enum.punit
 
Instances for true
        
        - decidable.true
 - true.inhabited
 - pi_subtype.can_lift
 - pi_subtype.can_lift'
 - true.unique
 - set.pi_set_coe.can_lift
 - set.pi_set_coe.can_lift'
 - finset.pi_finset_coe.can_lift
 - finset.pi_finset_coe.can_lift'
 - cardinal.can_lift_cardinal_Type
 - linear_map.can_lift_continuous_linear_map
 - linear_equiv.can_lift_continuous_linear_equiv
 
Logical not.
not P, with notation ¬ P, is the Prop which is true if and only if P is false. It is
internally represented as P → false, so one way to prove a goal ⊢ ¬ P is to use intro h,
which gives you a new hypothesis h : P and the goal ⊢ false.
A hypothesis h : ¬ P can be used in term mode as a function, so if w : P then h w : false.
Related mathlib tactic: contrapose.
- refl : ∀ {α : Sort u} (a : α), a = a
 
Instances for eq
        
        - decidable_eq_of_subsingleton
 - eq.decidable
 - fin_enum.dec_eq
 - con.quotient.decidable_eq
 - add_con.quotient.decidable_eq
 - ring_con.quotient.decidable_eq
 - conj_classes.decidable_eq
 - bool.decidable_eq
 - prod.decidable_eq
 - nat.decidable_eq
 - quotient.decidable_eq
 - list.decidable_eq
 - char.decidable_eq
 - string.has_decidable_eq
 - fin.decidable_eq
 - unsigned.decidable_eq
 - ordering.decidable_eq
 - name.has_decidable_eq
 - option.decidable_eq
 - options.has_decidable_eq
 - level.has_decidable_eq
 - pos.decidable_eq
 - expr.has_decidable_eq
 - local_context.has_decidable_eq
 - punit.decidable_eq
 - tactic.binder_info.has_decidable_eq
 - vm_obj_kind.decidable_eq
 - expr.coord.has_dec_eq
 - expr.address.has_dec_eq
 - eq_is_equiv
 - int.decidable_eq
 - subtype.decidable_eq
 - d_array.decidable_eq
 - array.decidable_eq
 - native.float.dec_eq
 - json.decidable_eq
 - widget.filter_type.decidable_eq
 - widget.local_collection.decidable_eq
 - feature_search.feature.decidable_eq
 - feature_search.predictor_type.decidable_eq
 - doc_category.decidable_eq
 - empty.decidable_eq
 - pempty.decidable_eq
 - function.decidable_eq_pfun
 - rbnode.color.decidable_eq
 - binder_info.decidable_eq
 - congr_arg_kind.decidable_eq
 - binder.decidable_eq
 - pexpr.decidable_eq
 - widget_override.filter_type.decidable_eq
 - widget_override.local_collection.decidable_eq
 - tactic.transparency.decidable_eq
 - lint_verbosity.decidable_eq
 - norm_cast.label.decidable_eq
 - auto.auto_config.decidable_eq
 - auto.case_option.decidable_eq
 - tactic.itauto.and_kind.decidable_eq
 - tactic.itauto.prop.decidable_eq
 - tactic.simp_arg_type.decidable_eq
 - tactic.suggest.head_symbol_match.decidable_eq
 - sigma.decidable_eq
 - psigma.decidable_eq
 - sum.decidable_eq
 - tactic.interactive.mono_selection.decidable_eq
 - units.decidable_eq
 - add_units.decidable_eq
 - plift.decidable_eq
 - ulift.decidable_eq
 - nat.coprime.decidable
 - pnat.decidable_eq
 - rat.decidable_eq
 - rat.can_lift
 - expr_lens.dir.decidable_eq
 - tactic.ring.normalize_mode.decidable_eq
 - linarith.ineq.decidable_eq
 - prod.lex.decidable_eq
 - pos_num.decidable_eq
 - num.decidable_eq
 - znum.decidable_eq
 - tree.decidable_eq
 - tactic.positivity.strictness.decidable_eq
 - real.decidable_eq
 - multiset.has_decidable_eq
 - multiset.decidable_eq_pi_multiset
 - tactic.interactive.mono_function.decidable_eq
 - finset.has_decidable_eq
 - finset.decidable_eq_pi_finset
 - fintype.decidable_pi_fintype
 - fintype.decidable_eq_equiv_fintype
 - fintype.decidable_eq_embedding_fintype
 - fintype.decidable_eq_one_hom_fintype
 - fintype.decidable_eq_zero_hom_fintype
 - fintype.decidable_eq_mul_hom_fintype
 - fintype.decidable_eq_add_hom_fintype
 - fintype.decidable_eq_monoid_hom_fintype
 - fintype.decidable_eq_add_monoid_hom_fintype
 - fintype.decidable_eq_monoid_with_zero_hom_fintype
 - fintype.decidable_eq_ring_hom_fintype
 - vector.decidable_eq
 - ulower.decidable_eq
 - free_monoid.decidable_eq
 - free_add_monoid.decidable_eq
 - dfinsupp.decidable_zero
 - dfinsupp.decidable_eq
 - finsupp.decidable_eq
 - tactic.decl_reducibility.decidable_eq
 - cycle.decidable_eq
 - sign_type.decidable_eq
 - localization.decidable_eq
 - add_localization.decidable_eq
 - tactic.ring_exp.coeff.decidable_eq
 - tactic.ring_exp.ex_type.decidable_eq
 - zmod.decidable_eq
 - mv_polynomial.decidable_eq_mv_polynomial
 - has_time.dec
 - has_length.dec
 - has_mass.dec
 - has_amount_of_substance.dec
 - has_electric_current.dec
 - has_temperature.dec
 - has_luminous_intensity.dec
 - dimension.decidable_eq
 - system1.decidable_eq
 - complex.decidable_eq
 - complex.can_lift
 - nat.partition.decidable_eq
 - semidirect_product.decidable_eq
 
Initialize the quotient module, which effectively adds the following definitions:
constant quot {α : Sort u} (r : α → α → Prop) : Sort u
constant quot.mk {α : Sort u} (r : α → α → Prop) (a : α) : quot r
constant quot.lift {α : Sort u} {r : α → α → Prop} {β : Sort v} (f : α → β) :
  (∀ a b : α, r a b → eq (f a) (f b)) → quot r → β
constant quot.ind {α : Sort u} {r : α → α → Prop} {β : quot r → Prop} :
  (∀ a : α, β (quot.mk r a)) → ∀ q : quot r, β q
Also the reduction rule:
quot.lift f _ (quot.mk a) ~~> f a
```
- refl : ∀ {α : Sort u} (a : α), a == a
 
Heterogeneous equality.
Its purpose is to write down equalities between terms whose types are not definitionally equal.
For example, given x : vector α n and y : vector α (0+n), x = y doesn't typecheck but x == y does.
If you have a goal ⊢ x == y,
your first instinct should be to ask (either yourself, or on zulip)
if something has gone wrong already.
If you really do need to follow this route,
you may find the lemmas eq_rec_heq and eq_mpr_heq useful.
- fst : α
 - snd : β
 
Instances for prod
        
        - prod.noncompact_space_left
 - prod.noncompact_space_right
 - prod.has_sizeof
 - prod.inhabited
 - prod.has_well_founded
 - prod.has_repr
 - lift_pair
 - lift_pair₁
 - lift_pair₂
 - prod.has_to_string
 - prod.has_to_format
 - prod.has_to_tactic_format
 - prod.has_reflect
 - tactic_doc_entry.has_to_string
 - subsingleton.prod
 - prod.nonempty
 - function.has_uncurry_induction
 - prod.is_empty_left
 - prod.is_empty_right
 - prod.is_refl_left
 - prod.is_refl_right
 - prod.is_irrefl
 - prod.lex.is_trans
 - prod.lex.is_antisymm
 - prod.is_total_left
 - prod.is_total_right
 - prod.is_trichotomous
 - prod.has_le
 - prod.preorder
 - prod.partial_order
 - prod.densely_ordered
 - prod.lex.is_well_founded
 - prod.lex.is_well_order
 - prod.is_refl_preimage_fst
 - prod.is_refl_preimage_snd
 - prod.is_trans_preimage_fst
 - prod.is_trans_preimage_snd
 - nontrivial_prod_right
 - nontrivial_prod_left
 - no_max_order_of_left
 - no_max_order_of_right
 - no_min_order_of_left
 - no_min_order_of_right
 - prod.has_sup
 - prod.has_inf
 - prod.semilattice_sup
 - prod.semilattice_inf
 - prod.lattice
 - prod.distrib_lattice
 - prod.has_top
 - prod.has_bot
 - prod.order_top
 - prod.order_bot
 - prod.bounded_order
 - tactic.interactive.mono_key.has_lt
 - prod.has_himp
 - prod.has_hnot
 - prod.has_sdiff
 - prod.has_compl
 - prod.generalized_heyting_algebra
 - prod.generalized_coheyting_algebra
 - prod.heyting_algebra
 - prod.coheyting_algebra
 - prod.has_Sup
 - prod.has_Inf
 - prod.complete_lattice
 - prod.has_mul
 - prod.has_add
 - prod.has_one
 - prod.has_zero
 - prod.has_inv
 - prod.has_neg
 - prod.has_involutive_inv
 - prod.has_involutive_neg
 - prod.has_div
 - prod.has_sub
 - prod.mul_zero_class
 - prod.semigroup
 - prod.add_semigroup
 - prod.comm_semigroup
 - prod.add_comm_semigroup
 - prod.semigroup_with_zero
 - prod.mul_one_class
 - prod.add_zero_class
 - prod.monoid
 - prod.add_monoid
 - prod.div_inv_monoid
 - prod.sub_neg_monoid
 - prod.division_monoid
 - prod.subtraction_monoid
 - prod.division_comm_monoid
 - prod.subtraction_comm_monoid
 - prod.group
 - prod.add_group
 - prod.left_cancel_semigroup
 - prod.left_cancel_add_semigroup
 - prod.right_cancel_semigroup
 - prod.right_cancel_add_semigroup
 - prod.left_cancel_monoid
 - prod.left_cancel_add_monoid
 - prod.right_cancel_monoid
 - prod.right_cancel_add_monoid
 - prod.cancel_monoid
 - prod.cancel_add_monoid
 - prod.comm_monoid
 - prod.add_comm_monoid
 - prod.cancel_comm_monoid
 - prod.cancel_add_comm_monoid
 - prod.mul_zero_one_class
 - prod.monoid_with_zero
 - prod.comm_monoid_with_zero
 - prod.comm_group
 - prod.add_comm_group
 - prod.has_smul
 - prod.has_vadd
 - prod.has_pow
 - prod.is_scalar_tower
 - prod.vadd_assoc_class
 - prod.smul_comm_class
 - prod.vadd_comm_class
 - prod.is_central_scalar
 - prod.is_central_vadd
 - prod.has_faithful_smul_left
 - prod.has_faithful_vadd_left
 - prod.has_faithful_smul_right
 - prod.has_faithful_vadd_right
 - prod.smul_comm_class_both
 - prod.vadd_comm_class_both
 - prod.is_scalar_tower_both
 - prod.mul_action
 - prod.add_action
 - prod.smul_zero_class
 - prod.distrib_smul
 - prod.distrib_mul_action
 - prod.mul_distrib_mul_action
 - prod.infinite_of_right
 - prod.infinite_of_left
 - prod.fintype
 - finite.prod.finite
 - prod.locally_finite_order
 - prod.locally_finite_order_top
 - prod.locally_finite_order_bot
 - prod.smul_with_zero
 - prod.mul_action_with_zero
 - prod.module
 - prod.no_zero_smul_divisors
 - prod.countable
 - prod.encodable
 - prod.add_monoid_with_one
 - prod.add_group_with_one
 - prod.ordered_comm_monoid
 - prod.ordered_add_comm_monoid
 - prod.ordered_cancel_comm_monoid
 - prod.ordered_cancel_add_comm_monoid
 - prod.has_exists_mul_of_le
 - prod.has_exists_add_of_le
 - prod.canonically_ordered_monoid
 - prod.canonically_ordered_add_monoid
 - prod.distrib
 - prod.non_unital_non_assoc_semiring
 - prod.non_unital_semiring
 - prod.non_assoc_semiring
 - prod.semiring
 - prod.non_unital_comm_semiring
 - prod.comm_semiring
 - prod.non_unital_non_assoc_ring
 - prod.non_unital_ring
 - prod.non_assoc_ring
 - prod.ring
 - prod.non_unital_comm_ring
 - prod.comm_ring
 - prod.ordered_semiring
 - prod.ordered_comm_semiring
 - prod.ordered_ring
 - prod.ordered_comm_ring
 - prod.ordered_smul
 - denumerable.prod
 - prod.topological_space
 - prod.discrete_topology
 - topological_space.prod.first_countable_topology
 - topological_space.prod.second_countable_topology
 - prod.compact_space
 - prod.locally_compact_space
 - prod.sigma_compact_space
 - prod.preconnected_space
 - prod.connected_space
 - prod.totally_disconnected_space
 - prod.t0_space
 - prod.t1_space
 - prod.t2_space
 - prod.regular_space
 - prod.t3_space
 - prod.uniform_space
 - complete_space.prod
 - uniform_space.separated.prod
 - con.has_mem
 - add_con.has_mem
 - prod.add_torsor
 - prod.has_continuous_const_smul
 - prod.has_continuous_const_vadd
 - prod.has_continuous_smul
 - prod.has_continuous_vadd
 - prod.has_continuous_mul
 - prod.has_continuous_add
 - prod.has_continuous_inv
 - prod.has_continuous_neg
 - prod.topological_group
 - prod.topological_add_group
 - prod.uniform_group
 - prod.uniform_add_group
 - prod.order_closed_topology
 - prod.compact_Icc_space
 - prod.pseudo_emetric_space_max
 - prod.emetric_space_max
 - prod.bornology
 - prod.bounded_space
 - prod.pseudo_metric_space_max
 - prod_proper_space
 - prod.metric_space_max
 - prod.topological_semiring
 - prod.topological_ring
 - prod.has_star
 - prod.has_trivial_star
 - prod.has_involutive_star
 - prod.star_semigroup
 - prod.star_add_monoid
 - prod.star_ring
 - prod.star_module
 - prod.has_continuous_star
 - prod.has_isometric_smul
 - prod.has_isometric_vadd
 - prod.has_isometric_smul'
 - prod.has_isometric_vadd'
 - prod.has_isometric_smul''
 - prod.has_isometric_vadd''
 - prod.has_norm
 - prod.seminormed_group
 - prod.seminormed_add_group
 - prod.seminormed_comm_group
 - prod.seminormed_add_comm_group
 - prod.normed_group
 - prod.normed_add_group
 - prod.normed_comm_group
 - prod.normed_add_comm_group
 - prod.Sup_convergence_class
 - prod.Inf_convergence_class
 - prod.omega_complete_partial_order
 - prod.idem_semiring
 - prod.idem_comm_semiring
 - prod.kleene_algebra
 - prod.algebra
 - small_prod
 - prod.norm_one_class
 - prod.non_unital_semi_normed_ring
 - prod.semi_normed_ring
 - prod.non_unital_normed_ring
 - prod.normed_ring
 - prod.normed_space
 - prod.normed_algebra
 - path.has_uncurry_path
 - module.finite.prod
 - is_noetherian_prod
 - prod.cstar_ring
 - fin_enum.prod
 - module.free.prod
 - nat.lcm.char_p
 - prod.char_p
 - prod.rootable_by
 - prod.divisible_by
 - prod.bifunctor
 - prod.is_lawful_bifunctor
 
- fst : α
 - snd : β
 
Similar to prod, but α and β can be propositions.
We use this type internally to automatically generate the brec_on recursor.
Instances for pprod
        
        
    - left : a
 - right : b
 
Logical and.
and P Q, with notation P ∧ Q, is the Prop which is true precisely when P and Q are
both true.
To prove a goal ⊢ P ∧ Q, you can use the tactic split,
which gives two separate goals ⊢ P and ⊢ Q.
Given a hypothesis h : P ∧ Q, you can use the tactic cases h with hP hQ
to obtain two new hypotheses hP : P and hQ : Q. See also the obtain or rcases tactics in
mathlib.
Instances for sum
        
        - sum.has_sizeof
 - sum.inhabited_left
 - sum.inhabited_right
 - sum.has_repr
 - sum.has_to_string
 - sum_has_to_format
 - sum.has_reflect
 - sum.monad
 - sum.is_lawful_functor
 - sum.is_lawful_monad
 - sum.traversable
 - sum.is_empty
 - sum.infinite_of_left
 - sum.infinite_of_right
 - sum.fintype
 - finite.sum.finite
 - sum.countable
 - sum.encodable
 - denumerable.sum
 - sum.is_lawful_traversable
 - sum.topological_space
 - sum.discrete_topology
 - topological_space.sum.second_countable_topology
 - sum.compact_space
 - sum.sigma_compact_space
 - sum.totally_disconnected_space
 - sum.t2_space
 - sum.uniform_space
 - complete_space.sum
 - small_sum
 - fin_enum.sum
 - sum.lift_rel.is_refl
 - sum.lift_rel.is_irrefl
 - sum.lift_rel.is_trans
 - sum.lift_rel.is_antisymm
 - sum.lex.is_refl
 - sum.lex.is_irrefl
 - sum.lex.is_trans
 - sum.lex.is_antisymm
 - sum.lex.is_total
 - sum.lex.is_trichotomous
 - sum.lex.is_well_order
 - sum.has_le
 - sum.has_lt
 - sum.preorder
 - sum.partial_order
 - sum.no_min_order
 - sum.no_max_order
 - sum.densely_ordered
 - sum.bifunctor
 - sum.is_lawful_bifunctor
 
Instances for psum
        
        
    Logical or.
or P Q, with notation P ∨ Q, is the proposition which is true if and only if P or Q is
true.
To prove a goal ⊢ P ∨ Q, if you know which alternative you want to prove,
you can use the tactics left (which gives the goal ⊢ P)
or right (which gives the goal ⊢ Q).
Given a hypothesis h : P ∨ Q and goal ⊢ R,
the tactic cases h will give you two copies of the goal ⊢ R,
with the hypothesis h : P in the first, and the hypothesis h : Q in the second.
Instances for or
        
        
    - fst : α
 - snd : β self.fst
 
Instances for sigma
        
        - sigma.has_sizeof
 - sigma.has_repr
 - sigma.has_to_string
 - sigma.has_to_format
 - sigma.is_empty_left
 - sigma.inhabited
 - sigma.reflect
 - sigma.fintype
 - finite.sigma.finite
 - sigma.countable
 - sigma.encodable
 - denumerable.sigma
 - sigma.topological_space
 - sigma.discrete_topology
 - topological_space.sigma.second_countable_topology
 - sigma.compact_space
 - sigma.sigma_compact_space
 - sigma.totally_disconnected_space
 - sigma.t2_space
 - small_sigma
 - fin_enum.sigma.fin_enum
 - matrix.sigma_sigma_fin_matrix_has_reflect
 
- fst : α
 - snd : β self.fst
 
Instances for psigma
        
        - psigma.has_sizeof
 - psigma.has_well_founded
 - psigma.inhabited
 - psigma.fintype_prop_left
 - psigma.fintype_prop_right
 - psigma.fintype_prop_prop
 - psigma.fintype
 - finite.psigma.finite
 - psigma.countable
 - fin_enum.psigma.fin_enum
 - fin_enum.psigma.fin_enum_prop_left
 - fin_enum.psigma.fin_enum_prop_right
 - fin_enum.psigma.fin_enum_prop_prop
 
Instances for bool
        
        - bool.has_sizeof
 - bool.inhabited
 - bool.has_repr
 - coe_bool_to_Prop
 - coe_sort_bool
 - bool.has_to_string
 - bool.has_to_format
 - bool.has_reflect
 - json.bool_coe
 - bool.linear_order
 - bool.nontrivial
 - bool.distrib_lattice
 - bool.bounded_order
 - bool.boolean_algebra
 - bool.fintype
 - bool.countable
 - bool.encodable
 - bool.topological_space
 - bool.discrete_topology
 - bool.uniform_space
 
- val : α
 - property : p self.val
 
Remark: subtype must take a Sort instead of Type because of the axiom strong_indefinite_description.
Instances for subtype
        
        - pos_mul_strict_mono.to_pos_mul_mono_rev
 - mul_pos_strict_mono.to_mul_pos_mono_rev
 - pos_mul_strict_mono.to_pos_mul_mono
 - mul_pos_strict_mono.to_mul_pos_mono
 - pos_mul_mono_rev.to_pos_mul_reflect_lt
 - mul_pos_mono_rev.to_mul_pos_reflect_lt
 - ordered_semiring.to_pos_mul_mono
 - ordered_semiring.to_mul_pos_mono
 - strict_ordered_semiring.to_pos_mul_strict_mono
 - strict_ordered_semiring.to_mul_pos_strict_mono
 - linear_ordered_semiring.to_pos_mul_reflect_lt
 - linear_ordered_semiring.to_mul_pos_reflect_lt
 - subtype.countable
 - subtype.has_sizeof
 - subtype.has_repr
 - coe_subtype
 - subtype.has_to_string
 - subtype.has_to_format
 - subtype.subsingleton
 - subtype.can_lift
 - subtype.is_empty
 - subtype.is_empty_false
 - unique.subtype_eq
 - unique.subtype_eq'
 - subtype.has_equiv
 - subtype.setoid
 - subtype.has_le
 - subtype.has_lt
 - subtype.preorder
 - subtype.partial_order
 - subtype.linear_order
 - subtype.well_founded_lt
 - subtype.well_founded_gt
 - nonempty_lt
 - nonempty_gt
 - complementeds.partial_order
 - complementeds.has_coe_t
 - complementeds.bounded_order
 - complementeds.inhabited
 - complementeds.has_sup
 - complementeds.has_inf
 - complementeds.distrib_lattice
 - complementeds.complemented_lattice
 - pos_mul_mono.to_covariant_class_pos_mul_le
 - mul_pos_mono.to_covariant_class_pos_mul_le
 - pos_mul_reflect_lt.to_contravariant_class_pos_mul_lt
 - mul_pos_reflect_lt.to_contravariant_class_pos_mul_lt
 - fintype.subtype_eq
 - fintype.subtype_eq'
 - list.subtype.fintype
 - multiset.subtype.fintype
 - finset.subtype.fintype
 - subtype.fintype
 - subtype.finite
 - set.finite.inhabited
 - subtype.locally_finite_order
 - subtype.locally_finite_order_top
 - subtype.locally_finite_order_bot
 - positive.subtype.has_add
 - positive.subtype.add_semigroup
 - positive.subtype.add_comm_semigroup
 - positive.subtype.add_left_cancel_semigroup
 - positive.subtype.add_right_cancel_semigroup
 - positive.covariant_class_add_lt
 - positive.covariant_class_swap_add_lt
 - positive.contravariant_class_add_lt
 - positive.contravariant_class_swap_add_lt
 - positive.contravariant_class_add_le
 - positive.contravariant_class_swap_add_le
 - positive.covariant_class_add_le
 - positive.subtype.has_mul
 - positive.nat.has_pow
 - positive.subtype.semigroup
 - positive.subtype.distrib
 - positive.subtype.has_one
 - positive.subtype.monoid
 - positive.subtype.ordered_comm_monoid
 - positive.subtype.linear_ordered_cancel_comm_monoid
 - subtype.encodable
 - with_bot.pos_mul_mono
 - with_bot.mul_pos_mono
 - with_bot.pos_mul_strict_mono
 - with_bot.mul_pos_strict_mono
 - with_bot.pos_mul_reflect_lt
 - with_bot.mul_pos_reflect_lt
 - with_bot.pos_mul_mono_rev
 - with_bot.mul_pos_mono_rev
 - nonneg.order_bot
 - nonneg.no_max_order
 - nonneg.semilattice_sup
 - nonneg.semilattice_inf
 - nonneg.distrib_lattice
 - nonneg.densely_ordered
 - nonneg.inhabited
 - nonneg.has_zero
 - nonneg.has_add
 - nonneg.has_nsmul
 - nonneg.ordered_add_comm_monoid
 - nonneg.linear_ordered_add_comm_monoid
 - nonneg.ordered_cancel_add_comm_monoid
 - nonneg.linear_ordered_cancel_add_comm_monoid
 - nonneg.has_one
 - nonneg.has_mul
 - nonneg.add_monoid_with_one
 - nonneg.has_pow
 - nonneg.ordered_semiring
 - nonneg.strict_ordered_semiring
 - nonneg.ordered_comm_semiring
 - nonneg.strict_ordered_comm_semiring
 - nonneg.monoid_with_zero
 - nonneg.comm_monoid_with_zero
 - nonneg.semiring
 - nonneg.comm_semiring
 - nonneg.nontrivial
 - nonneg.linear_ordered_semiring
 - nonneg.linear_ordered_comm_monoid_with_zero
 - nonneg.canonically_ordered_add_monoid
 - nonneg.canonically_ordered_comm_semiring
 - nonneg.canonically_linear_ordered_add_monoid
 - nonneg.has_sub
 - nonneg.has_ordered_sub
 - nonneg.has_inv
 - nonneg.has_div
 - nonneg.has_zpow
 - nonneg.linear_ordered_semifield
 - nonneg.canonically_linear_ordered_semifield
 - nonneg.linear_ordered_comm_group_with_zero
 - nonneg.archimedean
 - nonneg.floor_semiring
 - filter.inhabited_mem
 - subtype.topological_space
 - subtype.discrete_topology
 - subtype.totally_disconnected_space
 - subtype.t0_space
 - subtype.t1_space
 - subtype.t2_space
 - subtype.regular_space
 - subtype.t3_space
 - subtype.t5_space
 - subtype.uniform_space
 - fintype_nodup_list
 - cycle.fintype_nodup_cycle
 - cycle.fintype_nodup_nontrivial_cycle
 - subtype.order_closed_topology
 - subtype.pseudo_emetric_space
 - subtype.emetric_space
 - subtype.bornology
 - subtype.bounded_space
 - subtype.pseudo_metric_space
 - subtype.metric_space
 - small_subtype
 - is_idempotent_elem.subtype.has_zero
 - is_idempotent_elem.subtype.has_one
 - is_idempotent_elem.subtype.has_compl
 - fin_enum.subtype.fin_enum
 - is_well_order.subtype_nonempty
 
Instances of this typeclass
- decidable_eq_of_subsingleton
 - has_lt.lt.decidable
 - has_le.le.decidable
 - eq.decidable
 - fin_enum.dec_eq
 - con.quotient.decidable_eq
 - add_con.quotient.decidable_eq
 - ring_con.quotient.decidable_eq
 - conj_classes.decidable_eq
 - decidable.true
 - decidable.false
 - and.decidable
 - or.decidable
 - not.decidable
 - implies.decidable
 - iff.decidable
 - xor.decidable
 - exists_prop_decidable
 - forall_prop_decidable
 - ne.decidable
 - bool.decidable_eq
 - ite.decidable
 - dite.decidable
 - prod.decidable_eq
 - nat.decidable_eq
 - nat.decidable_le
 - nat.decidable_lt
 - quotient.decidable_eq
 - list.decidable_eq
 - list.decidable_mem
 - list.has_decidable_lt
 - list.has_decidable_le
 - char.decidable_lt
 - char.decidable_le
 - char.decidable_eq
 - string.has_decidable_lt
 - string.has_decidable_eq
 - fin.decidable_lt
 - fin.decidable_le
 - fin.decidable_eq
 - unsigned.decidable_eq
 - ordering.decidable_eq
 - coe_decidable_eq
 - name.lt.decidable_rel
 - name.has_decidable_eq
 - option.decidable_eq
 - options.has_decidable_eq
 - level.has_decidable_eq
 - pos.decidable_eq
 - expr.has_decidable_eq
 - expr.lt_prop.decidable_rel
 - local_context.has_decidable_eq
 - local_context.decidable_rel
 - local_context.has_mem.mem.decidable
 - punit.decidable_eq
 - tactic.binder_info.has_decidable_eq
 - vm_obj_kind.decidable_eq
 - expr.coord.has_dec_eq
 - expr.address.has_dec_eq
 - nat.decidable_dvd
 - list.decidable_bex
 - list.decidable_ball
 - int.decidable_eq
 - int.decidable_le
 - int.decidable_lt
 - char.decidable_is_whitespace
 - char.decidable_is_upper
 - char.decidable_is_lower
 - char.decidable_is_alpha
 - char.decidable_is_digit
 - char.decidable_is_alphanum
 - char.decidable_is_punctuation
 - subtype.decidable_eq
 - d_array.decidable_eq
 - array.decidable_eq
 - native.float.decidable_lt
 - native.float.decidable_le
 - native.float.dec_eq
 - json.decidable_eq
 - widget.filter_type.decidable_eq
 - widget.local_collection.decidable_eq
 - feature_search.feature.decidable_eq
 - feature_search.predictor_type.decidable_eq
 - option.decidable_forall_mem
 - option.decidable_exists_mem
 - doc_category.decidable_eq
 - empty.decidable_eq
 - pempty.decidable_eq
 - function.decidable_eq_pfun
 - rbnode.color.decidable_eq
 - list.decidable_pairwise
 - list.decidable_chain
 - list.decidable_chain'
 - list.nodup_decidable
 - binder_info.decidable_eq
 - congr_arg_kind.decidable_eq
 - binder.decidable_eq
 - pexpr.decidable_eq
 - widget_override.filter_type.decidable_eq
 - widget_override.local_collection.decidable_eq
 - tactic.transparency.decidable_eq
 - lint_verbosity.decidable_eq
 - bool.decidable_forall_bool
 - bool.decidable_exists_bool
 - norm_cast.label.decidable_eq
 - auto.auto_config.decidable_eq
 - auto.case_option.decidable_eq
 - tactic.itauto.and_kind.decidable_eq
 - tactic.itauto.prop.decidable_eq
 - tactic.itauto.has_lt.lt.decidable_rel
 - tactic.simp_arg_type.decidable_eq
 - tactic.suggest.head_symbol_match.decidable_eq
 - quot.lift.decidable_pred
 - quot.lift₂.decidable_pred
 - quot.lift_on.decidable
 - quot.lift_on₂.decidable
 - quotient.lift.decidable_pred
 - quotient.lift₂.decidable_pred
 - quotient.lift_on.decidable
 - quotient.lift_on₂.decidable
 - quotient.lift_on'.decidable
 - quotient.lift_on₂'.decidable
 - sigma.decidable_eq
 - psigma.decidable_eq
 - prod.lex.decidable
 - sum.decidable_eq
 - sum.lift_rel.decidable
 - sum.lex.decidable_rel
 - order.preimage.decidable
 - subtype.decidable_le
 - subtype.decidable_lt
 - with_bot.decidable_le
 - with_bot.decidable_lt
 - with_top.decidable_le
 - with_top.decidable_lt
 - tactic.interactive.mono_selection.decidable_eq
 - units.decidable_eq
 - add_units.decidable_eq
 - is_unit.decidable
 - is_add_unit.decidable
 - set.decidable_sdiff
 - set.decidable_inter
 - set.decidable_union
 - set.decidable_compl
 - set.decidable_emptyset
 - set.decidable_univ
 - set.decidable_set_of
 - plift.decidable_eq
 - ulift.decidable_eq
 - set.decidable_mem_prod
 - set.decidable_mem_diagonal
 - set.decidable_mem_Ioo
 - set.decidable_mem_Ico
 - set.decidable_mem_Iio
 - set.decidable_mem_Icc
 - set.decidable_mem_Iic
 - set.decidable_mem_Ioc
 - set.decidable_mem_Ici
 - set.decidable_mem_Ioi
 - set.compl.decidable_mem
 - nat.decidable_ball_lt
 - nat.decidable_forall_fin
 - nat.decidable_ball_le
 - nat.decidable_exists_lt
 - nat.decidable_exists_le
 - nat.decidable_lo_hi
 - nat.decidable_lo_hi_le
 - int.decidable_dvd
 - nat.coprime.decidable
 - pnat.decidable_eq
 - rat.decidable_eq
 - rat.decidable_nonneg
 - rat.decidable_le
 - expr_lens.dir.decidable_eq
 - tactic.ring.normalize_mode.decidable_eq
 - linarith.ineq.decidable_eq
 - prod.lex.decidable_eq
 - pos_num.decidable_eq
 - num.decidable_eq
 - znum.decidable_eq
 - pos_num.decidable_lt
 - pos_num.decidable_le
 - num.decidable_lt
 - num.decidable_le
 - znum.decidable_lt
 - znum.decidable_le
 - tree.decidable_eq
 - tactic.positivity.strictness.decidable_eq
 - real.decidable_lt
 - real.decidable_le
 - real.decidable_eq
 - list.decidable_sublist
 - list.all₂.decidable_pred
 - list.decidable_prefix
 - list.decidable_suffix
 - list.decidable_infix
 - list.lex.decidable_rel
 - list.decidable_subperm
 - list.decidable_perm
 - multiset.has_decidable_eq
 - multiset.decidable_mem
 - multiset.decidable_le
 - multiset.decidable_dforall_multiset
 - multiset.decidable_eq_pi_multiset
 - multiset.decidable_dexists_multiset
 - multiset.nodup_decidable
 - tactic.interactive.mono_function.decidable_eq
 - finset.has_decidable_eq
 - finset.decidable_mem
 - finset.decidable_mem'
 - finset.decidable_nonempty
 - finset.decidable_disjoint
 - finset.decidable_dforall_finset
 - finset.decidable_eq_pi_finset
 - finset.decidable_dexists_finset
 - fintype.decidable_pi_fintype
 - fintype.decidable_forall_fintype
 - fintype.decidable_exists_fintype
 - fintype.decidable_mem_range_fintype
 - fintype.decidable_eq_equiv_fintype
 - fintype.decidable_eq_embedding_fintype
 - fintype.decidable_eq_one_hom_fintype
 - fintype.decidable_eq_zero_hom_fintype
 - fintype.decidable_eq_mul_hom_fintype
 - fintype.decidable_eq_add_hom_fintype
 - fintype.decidable_eq_monoid_hom_fintype
 - fintype.decidable_eq_add_monoid_hom_fintype
 - fintype.decidable_eq_monoid_with_zero_hom_fintype
 - fintype.decidable_eq_ring_hom_fintype
 - fintype.decidable_injective_fintype
 - fintype.decidable_surjective_fintype
 - fintype.decidable_bijective_fintype
 - fintype.decidable_right_inverse_fintype
 - fintype.decidable_left_inverse_fintype
 - finset.decidable_codisjoint
 - finset.decidable_is_compl
 - list.decidable_sorted
 - list.decidable_duplicate
 - finset.decidable_exists_of_decidable_subsets
 - finset.decidable_forall_of_decidable_subsets
 - finset.decidable_exists_of_decidable_ssubsets
 - finset.decidable_forall_of_decidable_ssubsets
 - vector.decidable_eq
 - setoid.decidable_rel
 - sym.decidable_mem
 - associated.decidable_rel
 - associates.has_dvd.dvd.decidable_rel
 - set.decidable_mem_center
 - subsemigroup.decidable_mem_center
 - add_subsemigroup.decidable_mem_center
 - set.decidable_mem_centralizer
 - set.decidable_mem_add_centralizer
 - subsemigroup.decidable_mem_centralizer
 - add_subsemigroup.decidable_mem_centralizer
 - monoid_hom.decidable_mem_mker
 - add_monoid_hom.decidable_mem_mker
 - submonoid.decidable_mem_center
 - add_submonoid.decidable_mem_center
 - submonoid.decidable_mem_centralizer
 - add_submonoid.decidable_mem_centralizer
 - ulower.decidable_eq
 - antisymm_rel.decidable_rel
 - subgroup.decidable_mem_center
 - monoid_hom.decidable_mem_ker
 - add_monoid_hom.decidable_mem_ker
 - free_monoid.decidable_eq
 - free_add_monoid.decidable_eq
 - dfinsupp.decidable_zero
 - dfinsupp.decidable_eq
 - finsupp.decidable_eq
 - subsemiring.decidable_mem_center
 - subring.decidable_mem_center
 - tactic.decl_reducibility.decidable_eq
 - list.is_rotated_decidable
 - list.setoid.r.decidable
 - cycle.decidable_eq
 - cycle.has_mem.mem.decidable
 - cycle.nontrivial.decidable
 - cycle.nodup.decidable
 - nat.decidable_prime
 - function.is_fixed_pt.decidable
 - function.fixed_points.decidable
 - function.is_periodic_pt.decidable
 - monoid_hom.decidable_mem_range
 - add_monoid_hom.decidable_mem_range
 - quotient_group.left_rel_decidable
 - quotient_add_group.left_rel_decidable
 - quotient_group.right_rel_decidable
 - quotient_add_group.right_rel_decidable
 - nat.modeq.decidable
 - nat.even.decidable_pred
 - nat.odd.decidable_pred
 - int.even.decidable_pred
 - int.odd.decidable_pred
 - pairwise.decidable
 - finset.sup_indep.decidable
 - part.none_decidable
 - part.some_decidable
 - part.of_option_decidable
 - set.decidable_mem_mul
 - set.decidable_mem_add
 - set.decidable_mem_pow
 - set.decidable_mem_nsmul
 - part_enat.dom.decidable
 - part_enat.decidable_le
 - sign_type.decidable_eq
 - sign_type.le.decidable_rel
 - polynomial.monic.decidable
 - polynomial.is_root.decidable
 - finsupp.decidable_le
 - polynomial.trailing_monic.decidable
 - localization.decidable_eq
 - add_localization.decidable_eq
 - localization.decidable_le
 - add_localization.decidable_le
 - localization.decidable_lt
 - add_localization.decidable_lt
 - tactic.ring_exp.coeff.decidable_eq
 - tactic.ring_exp.ex_type.decidable_eq
 - zmod.decidable_eq
 - mv_polynomial.decidable_eq_mv_polynomial
 - has_time.dec
 - has_length.dec
 - has_mass.dec
 - has_amount_of_substance.dec
 - has_electric_current.dec
 - has_temperature.dec
 - has_luminous_intensity.dec
 - dimension.decidable_eq
 - system1.decidable_eq
 - complex.decidable_eq
 - int.modeq.decidable
 - decidable_powers
 - decidable_multiples
 - decidable_zpowers
 - decidable_zmultiples
 - multiplicity.decidable_nat
 - multiplicity.decidable_int
 - nat.partition.decidable_eq
 - equiv.perm.r.decidable_rel
 - equiv.perm.same_cycle.decidable_rel
 - equiv.perm.sum_congr_hom.decidable_mem_range
 - equiv.perm.sigma_congr_right_hom.decidable_mem_range
 - equiv.perm.subtype_congr_hom.decidable_mem_range
 - semidirect_product.decidable_eq
 
Instances of other typeclasses for decidable
        
        
    Equations
- decidable_pred r = Π (a : α), decidable (r a)
 
Equations
- decidable_rel r = Π (a b : α), decidable (r a b)
 
Equations
Instances for option
        
        - option.has_sizeof
 - option.has_repr
 - coe_option
 - option.has_to_string
 - option.monad
 - option.alternative
 - option.inhabited
 - option.has_to_format
 - tactic.opt_to_tac
 - option.has_to_tactic_format
 - option.has_reflect
 - option.is_lawful_monad
 - option.has_mem
 - option.lift_or_get_comm
 - option.lift_or_get_assoc
 - option.lift_or_get_idem
 - option.lift_or_get_is_left_id
 - option.lift_or_get_is_right_id
 - option.traversable
 - option.unique
 - option.nontrivial
 - option.infinite
 - option.countable
 - option.encodable
 - denumerable.option
 - option.is_lawful_traversable
 - option.fintype
 - part.has_coe
 - pequiv.fun_like
 - json.has_coe
 
Instances for list
        
        - list.has_sizeof
 - list.inhabited
 - list.has_append
 - list.has_mem
 - list.has_emptyc
 - list.has_insert
 - list.has_singleton
 - list.is_lawful_singleton
 - list.has_union
 - list.has_inter
 - list.has_lt
 - list.has_le
 - list.has_repr
 - lift_list
 - list.has_to_string
 - list.has_to_format
 - list.has_to_tactic_format
 - tactic.andthen_seq_focus
 - list.reflect
 - list.has_subset
 - list.monad
 - list.is_lawful_monad
 - list.alternative
 - list.bin_tree_to_list
 - json.array_coe
 - widget.html.list_coe
 - list.has_sdiff
 - list.traversable
 - list.reflect'
 - list.unique_of_is_empty
 - list.nil.is_left_id
 - list.nil.is_right_id
 - list.has_append.append.is_associative
 - list.has_subset.subset.is_trans
 - list.is_prefix.is_partial_order
 - list.is_suffix.is_partial_order
 - list.is_infix.is_partial_order
 - list.sublist_forall₂.is_refl
 - list.sublist_forall₂.is_trans
 - list.can_lift
 - list.lex.is_order_connected
 - list.lex.is_trichotomous
 - list.lex.is_asymm
 - list.lex.is_strict_total_order
 - list.has_lt'
 - list.linear_order
 - list.has_le'
 - list.zip_with.is_symm_op
 - list.is_setoid
 - multiset.has_coe
 - list.infinite
 - list.encodable
 - list.countable
 - denumerable.denumerable_list
 - list.is_lawful_traversable
 - cycle.has_coe
 
Instances for nat
        
        - polynomial.has_pow
 - algebra_nat
 - no_zero_smul_divisors.char_zero.no_zero_smul_divisors_nat
 - nat.cast_coe
 - nat.has_zero
 - nat.has_one
 - nat.has_add
 - nat.has_sizeof
 - nat.has_le
 - nat.has_lt
 - nat.has_sub
 - nat.has_mul
 - nat.has_dvd
 - nat.inhabited
 - nat.has_div
 - nat.has_mod
 - nat.has_repr
 - nat.has_to_string
 - nat_to_format
 - nat.has_to_format
 - nat.reflect
 - nat.linear_order
 - int.has_coe
 - native.float.of_nat_coe
 - native.float.has_nat_pow
 - has_le.le.can_lift
 - nat.well_founded_lt
 - nat.lt.is_well_order
 - nat.distrib_lattice
 - monoid.has_pow
 - add_monoid.has_smul_nat
 - with_zero.nat.has_pow
 - add_monoid.nat_smul_comm_class
 - add_monoid.nat_smul_comm_class'
 - nat.nontrivial
 - nat.comm_semiring
 - nat.add_comm_monoid
 - nat.add_monoid
 - nat.monoid
 - nat.comm_monoid
 - nat.comm_semigroup
 - nat.semigroup
 - nat.add_comm_semigroup
 - nat.add_semigroup
 - nat.distrib
 - nat.semiring
 - nat.cancel_comm_monoid_with_zero
 - nat.order_bot
 - nat.linear_ordered_comm_semiring
 - nat.linear_ordered_comm_monoid_with_zero
 - nat.linear_ordered_semiring
 - nat.strict_ordered_semiring
 - nat.strict_ordered_comm_semiring
 - nat.ordered_semiring
 - nat.ordered_comm_semiring
 - nat.linear_ordered_cancel_add_comm_monoid
 - nat.canonically_ordered_comm_semiring
 - nat.canonically_linear_ordered_add_monoid
 - nat.has_ordered_sub
 - non_unital_non_assoc_semiring.nat_smul_comm_class
 - non_unital_non_assoc_semiring.nat_is_scalar_tower
 - coe_pnat_nat
 - nat.can_lift_pnat
 - fin.fin_to_nat
 - nat.floor_semiring
 - nat.archimedean
 - cau_seq.nat.has_pow
 - cau_seq.completion.nat.has_pow
 - add_monoid.nat_smul_with_zero
 - add_comm_monoid.nat_module
 - add_comm_monoid.nat_is_scalar_tower
 - nat.infinite
 - nat.locally_finite_order
 - nat.countable
 - add_submonoid_class.has_nsmul
 - submonoid_class.has_pow
 - positive.nat.has_pow
 - nat.encodable
 - add_subgroup.has_nsmul
 - subgroup.has_npow
 - dfinsupp.has_nat_scalar
 - finsupp.has_nat_scalar
 - nonneg.has_nsmul
 - nonneg.has_pow
 - nat.ordered_smul
 - denumerable.nat
 - nat.topological_space
 - nat.discrete_topology
 - nat.uniform_space
 - nat.primes.coe_nat
 - add_con.quotient.has_nsmul
 - con.nat.has_pow
 - nat.has_Inf
 - nat.has_Sup
 - nat.lattice
 - nat.conditionally_complete_linear_order_bot
 - add_monoid.has_continuous_const_smul_nat
 - add_monoid.has_continuous_smul_nat
 - nat.has_dist
 - nat.metric_space
 - nat.proper_space
 - nat.noncompact_space
 - add_monoid.has_uniform_continuous_const_smul_nat
 - nat.modeq.is_refl
 - nat.succ_order
 - nat.pred_order
 - nat.is_succ_archimedean
 - nat.is_pred_archimedean
 - enat.has_coe_t
 - enat.can_lift
 - part_enat.part.dom.can_lift
 - cardinal.can_lift_cardinal_nat
 - set.Icc.has_pow
 - set.Ioc.has_pow
 - ring_con.has_nsmul
 - ring_con.nat.has_pow
 - normed_add_group_hom.has_nat_scalar
 - self_adjoint.nat.has_pow
 - dimension.nat.has_pow
 - nat.wf_dvd_monoid
 - nat.unique_factorization_monoid
 - nat.gcd_monoid
 - nat.normalized_gcd_monoid
 - quotient_group.rootable_by
 - quotient_add_group.divisible_by
 - matrix.special_linear_group.nat.has_pow
 
Instances for unification_constraint
        
        
    - pattern : unification_constraint
 - constraints : list unification_constraint
 
Instances for unification_hint
        
        
    Declare builtin and reserved notation
- zero : α
 
Instances of this typeclass
- neg_zero_class.to_has_zero
 - add_zero_class.to_has_zero
 - mul_zero_class.to_has_zero
 - nat.has_zero
 - int.has_zero
 - fin.has_zero
 - unsigned.has_zero
 - native.float.has_zero
 - zero_hom.has_zero
 - add_hom.has_zero
 - add_monoid_hom.has_zero
 - pi.has_zero
 - order_dual.has_zero
 - lex.has_zero
 - additive.has_zero
 - with_zero.has_zero
 - mul_opposite.has_zero
 - add_opposite.has_zero
 - non_unital_ring_hom.has_zero
 - with_top.has_zero
 - with_bot.has_zero
 - rat.has_zero
 - fin.has_zero_of_ne_zero
 - num.has_zero
 - znum.has_zero
 - prod.has_zero
 - cau_seq.has_zero
 - cau_seq.completion.Cauchy.has_zero
 - real.has_zero
 - multiset.has_zero
 - sym.has_zero
 - ulift.has_zero
 - distrib_mul_action_hom.has_zero
 - linear_map.has_zero
 - associates.has_zero
 - zero_mem_class.has_zero
 - add_submonoid.has_zero
 - add_subgroup.has_zero
 - sub_mul_action.has_zero
 - submodule.has_zero
 - dfinsupp.has_zero
 - finsupp.has_zero
 - linear_equiv.has_zero
 - nonneg.has_zero
 - group_seminorm.has_zero
 - add_group_seminorm.has_zero
 - nonarch_add_group_seminorm.has_zero
 - add_con.quotient.has_zero
 - ennreal.has_zero
 - part.has_zero
 - non_unital_alg_hom.has_zero
 - enat.has_zero
 - part_enat.has_zero
 - cardinal.has_zero
 - submodule.quotient.has_quotient.quotient.has_zero
 - continuous_linear_map.has_zero
 - affine_map.has_zero
 - sign_type.has_zero
 - set.Icc.has_zero
 - set.Ico.has_zero
 - unit_interval.has_zero
 - seminorm.has_zero
 - multilinear_map.has_zero
 - continuous_multilinear_map.has_zero
 - ring_con.quotient.has_zero
 - polynomial.has_zero
 - add_localization.has_zero
 - localization.has_zero
 - is_idempotent_elem.subtype.has_zero
 - normed_add_group_hom.has_zero
 - non_unital_star_alg_hom.has_zero
 - matrix.has_zero
 - ordinal.has_zero
 - complex.has_zero
 - alternating_map.has_zero
 - uniform_space.completion.has_zero
 - bilin_form.has_zero
 
- one : α
 
Instances of this typeclass
- inv_one_class.to_has_one
 - mul_one_class.to_has_one
 - add_monoid_with_one.to_has_one
 - nat.has_one
 - int.has_one
 - fin.has_one
 - unsigned.has_one
 - native.float.has_one
 - one_hom.has_one
 - mul_hom.has_one
 - monoid_hom.has_one
 - pi.has_one
 - order_dual.has_one
 - lex.has_one
 - multiplicative.has_one
 - with_one.has_one
 - with_zero.has_one
 - mul_opposite.has_one
 - add_opposite.has_one
 - with_top.has_one
 - with_bot.has_one
 - pnat.has_one
 - rat.has_one
 - fin.has_one_of_ne_zero
 - pos_num.has_one
 - num.has_one
 - znum.has_one
 - prod.has_one
 - cau_seq.has_one
 - cau_seq.completion.Cauchy.has_one
 - real.has_one
 - ulift.has_one
 - distrib_mul_action_hom.has_one
 - linear_map.module.End.has_one
 - associates.has_one
 - conj_classes.has_one
 - one_mem_class.has_one
 - submonoid.has_one
 - positive.subtype.has_one
 - subgroup.has_one
 - nonneg.has_one
 - add_group_seminorm.has_one
 - group_seminorm.has_one
 - nonarch_add_group_seminorm.has_one
 - add_group_norm.has_one
 - group_norm.has_one
 - nonarch_add_group_norm.has_one
 - con.quotient.has_one
 - add_submonoid.has_one
 - part.has_one
 - non_unital_alg_hom.has_one
 - set_semiring.has_one
 - sub_mul_action.has_one
 - submodule.has_one
 - part_enat.has_one
 - cardinal.has_one
 - continuous_linear_map.has_one
 - sign_type.has_one
 - set.Icc.has_one
 - set.Ioc.has_one
 - unit_interval.has_one
 - ring_con.quotient.has_one
 - ideal.quotient.has_one
 - monoid_algebra.has_one
 - add_monoid_algebra.has_one
 - polynomial.has_one
 - localization.has_one
 - is_idempotent_elem.subtype.has_one
 - self_adjoint.has_one
 - dimension.has_one
 - matrix.has_one
 - ordinal.has_one
 - complex.has_one
 - matrix.special_linear_group.has_one
 - uniform_space.completion.has_one
 
- add : α → α → α
 
Instances of this typeclass
- add_semigroup.to_has_add
 - add_zero_class.to_has_add
 - distrib.to_has_add
 - add_mem_class.has_add
 - nat.has_add
 - options.has_add
 - int.has_add
 - fin.has_add
 - unsigned.has_add
 - native.float.has_add
 - add_hom.has_add
 - add_monoid_hom.has_add
 - pi.has_add
 - order_dual.has_add
 - lex.has_add
 - additive.has_add
 - with_zero.has_add
 - mul_opposite.has_add
 - add_opposite.has_add
 - with_top.has_add
 - with_bot.has_add
 - rat.has_add
 - pos_num.has_add
 - num.has_add
 - znum.has_add
 - prod.has_add
 - cau_seq.has_add
 - cau_seq.completion.Cauchy.has_add
 - real.has_add
 - multiset.has_add
 - ulift.has_add
 - linear_map.has_add
 - add_submonoid.has_add
 - positive.subtype.has_add
 - pnat.has_add
 - add_subgroup.has_add
 - submodule.has_add
 - dfinsupp.has_add
 - dfinsupp.has_add₂
 - finsupp.has_add
 - nonneg.has_add
 - group_seminorm.has_add
 - add_group_seminorm.has_add
 - group_norm.has_add
 - add_group_norm.has_add
 - add_con.has_add
 - part.has_add
 - part_enat.has_add
 - cardinal.has_add
 - continuous_linear_map.has_add
 - affine_map.has_add
 - seminorm.has_add
 - multilinear_map.has_add
 - continuous_multilinear_map.has_add
 - ring_con.quotient.has_add
 - polynomial.has_add
 - add_localization.has_add
 - localization.has_add
 - normed_add_group_hom.has_add
 - dimension.has_add
 - matrix.has_add
 - ordinal.has_add
 - complex.has_add
 - alternating_map.has_add
 - uniform_space.completion.has_add
 - bilin_form.has_add
 
- mul : α → α → α
 
Instances of this typeclass
- semigroup.to_has_mul
 - mul_one_class.to_has_mul
 - mul_zero_class.to_has_mul
 - distrib.to_has_mul
 - mul_mem_class.has_mul
 - nat.has_mul
 - int.has_mul
 - fin.has_mul
 - unsigned.has_mul
 - native.float.has_mul
 - mul_hom.has_mul
 - monoid_hom.has_mul
 - monoid_with_zero_hom.has_mul
 - pi.has_mul
 - order_dual.has_mul
 - lex.has_mul
 - multiplicative.has_mul
 - with_one.has_mul
 - mul_opposite.has_mul
 - add_opposite.has_mul
 - rat.has_mul
 - pos_num.has_mul
 - num.has_mul
 - znum.has_mul
 - prod.has_mul
 - cau_seq.has_mul
 - cau_seq.completion.Cauchy.has_mul
 - real.has_mul
 - ulift.has_mul
 - linear_map.module.End.has_mul
 - associates.has_mul
 - submonoid.has_mul
 - positive.subtype.has_mul
 - pnat.has_mul
 - subgroup.has_mul
 - nonneg.has_mul
 - con.has_mul
 - add_submonoid.has_mul
 - part.has_mul
 - sub_mul_action.has_mul
 - submodule.has_mul
 - cardinal.has_mul
 - ideal.has_mul
 - continuous_linear_map.has_mul
 - sign_type.has_mul
 - set.Icc.has_mul
 - set.Ico.has_mul
 - set.Ioc.has_mul
 - set.Ioo.has_mul
 - unit_interval.has_mul
 - ring_con.quotient.has_mul
 - monoid_algebra.has_mul
 - add_monoid_algebra.has_mul
 - polynomial.has_mul
 - localization.has_mul
 - self_adjoint.has_mul
 - dimension.has_mul
 - matrix.has_mul
 - complex.has_mul
 - matrix.special_linear_group.has_mul
 - uniform_space.completion.has_mul
 
- inv : α → α
 
Instances of this typeclass
- has_involutive_inv.to_has_inv
 - inv_one_class.to_has_inv
 - div_inv_monoid.to_has_inv
 - monoid_hom.has_inv
 - pi.has_inv
 - units.has_inv
 - order_dual.has_inv
 - lex.has_inv
 - multiplicative.has_inv
 - with_one.has_inv
 - with_zero.has_inv
 - mul_opposite.has_inv
 - add_opposite.has_inv
 - rat.has_inv
 - prod.has_inv
 - cau_seq.completion.Cauchy.has_inv
 - real.has_inv
 - ulift.has_inv
 - subgroup_class.has_inv
 - subgroup.has_inv
 - nonneg.has_inv
 - con.has_inv
 - filter.has_inv
 - ennreal.has_inv
 - subfield.has_inv
 - part.has_inv
 - self_adjoint.has_inv
 - dimension.has_inv
 - complex.has_inv
 - zmod.has_inv
 - matrix.has_inv
 - metric.sphere.has_inv
 - matrix.special_linear_group.has_inv
 
- neg : α → α
 
Instances of this typeclass
- has_involutive_neg.to_has_neg
 - neg_zero_class.to_has_neg
 - sub_neg_monoid.to_has_neg
 - int.has_neg
 - native.float.has_neg
 - add_monoid_hom.has_neg
 - pi.has_neg
 - add_units.has_neg
 - order_dual.has_neg
 - lex.has_neg
 - additive.has_neg
 - with_zero.has_neg
 - mul_opposite.has_neg
 - add_opposite.has_neg
 - units.has_neg
 - rat.has_neg
 - fin.has_neg
 - znum.has_neg
 - prod.has_neg
 - cau_seq.has_neg
 - cau_seq.completion.Cauchy.has_neg
 - real.has_neg
 - ulift.has_neg
 - linear_map.has_neg
 - add_subgroup_class.has_neg
 - add_subgroup.has_neg
 - sub_mul_action.has_neg
 - dfinsupp.has_neg
 - finsupp.has_neg
 - add_con.has_neg
 - filter.has_neg
 - part.has_neg
 - tensor_product.has_neg
 - linear_pmap.has_neg
 - continuous_linear_map.has_neg
 - affine_map.has_neg
 - ray_vector.has_neg
 - module.ray.has_neg
 - sign_type.has_neg
 - multilinear_map.has_neg
 - continuous_multilinear_map.has_neg
 - ring_con.quotient.has_neg
 - polynomial.has_neg
 - localization.has_neg
 - normed_add_group_hom.has_neg
 - unitary.has_neg
 - matrix.has_neg
 - complex.has_neg
 - alternating_map.has_neg
 - matrix.special_linear_group.has_neg
 - matrix.GL_pos.has_neg
 - uniform_space.completion.has_neg
 - bilin_form.has_neg
 
- sub : α → α → α
 
Instances of this typeclass
- sub_neg_monoid.to_has_sub
 - nat.has_sub
 - int.has_sub
 - fin.has_sub
 - unsigned.has_sub
 - native.float.has_sub
 - add_monoid_hom.has_sub
 - pi.has_sub
 - order_dual.has_sub
 - lex.has_sub
 - additive.has_sub
 - mul_opposite.has_sub
 - pos_num.has_sub
 - num.has_sub
 - prod.has_sub
 - cau_seq.has_sub
 - cau_seq.completion.Cauchy.has_sub
 - real.has_sub
 - multiset.has_sub
 - ulift.has_sub
 - linear_map.has_sub
 - pnat.has_sub
 - add_subgroup_class.has_sub
 - add_subgroup.has_sub
 - dfinsupp.has_sub
 - finsupp.has_sub
 - nonneg.has_sub
 - nnreal.has_sub
 - add_con.has_sub
 - with_top.has_sub
 - ennreal.has_sub
 - part.has_sub
 - enat.has_sub
 - continuous_linear_map.has_sub
 - affine_map.has_sub
 - multilinear_map.has_sub
 - continuous_multilinear_map.has_sub
 - ring_con.quotient.has_sub
 - polynomial.has_sub
 - finsupp.tsub
 - normed_add_group_hom.has_sub
 - dimension.has_sub
 - matrix.has_sub
 - ordinal.has_sub
 - complex.has_sub
 - alternating_map.has_sub
 - uniform_space.completion.has_sub
 - bilin_form.has_sub
 
- div : α → α → α
 
Instances of this typeclass
- euclidean_domain.has_div
 - div_inv_monoid.to_has_div
 - nat.has_div
 - int.has_div
 - fin.has_div
 - unsigned.has_div
 - native.float.has_div
 - monoid_hom.has_div
 - pi.has_div
 - order_dual.has_div
 - lex.has_div
 - multiplicative.has_div
 - with_zero.has_div
 - add_opposite.has_div
 - rat.has_div
 - num.has_div
 - znum.has_div
 - prod.has_div
 - ulift.has_div
 - subgroup_class.has_div
 - subgroup.has_div
 - nonneg.has_div
 - nnreal.has_div
 - con.has_div
 - subfield.has_div
 - part.has_div
 - submodule.has_div
 - polynomial.has_div
 - self_adjoint.has_div
 - dimension.has_div
 - ordinal.has_div
 - metric.sphere.has_div
 
- dvd : α → α → Prop
 
Instances of this typeclass
- mod : α → α → α
 
Instances of this typeclass
- le : α → α → Prop
 
Instances of this typeclass
- with_bot.has_le
 - with_top.has_le
 - preorder.to_has_le
 - nat.has_le
 - list.has_le
 - char.has_le
 - fin.has_le
 - local_context.has_le
 - int.has_le
 - unsigned.has_le
 - native.float.has_le
 - order_dual.has_le
 - pi.has_le
 - subtype.has_le
 - prod.has_le
 - Prop.has_le
 - set.has_le
 - multiplicative.has_le
 - additive.has_le
 - rat.has_le
 - prod.lex.has_le
 - pos_num.has_le
 - num.has_le
 - znum.has_le
 - cau_seq.has_le
 - real.has_le
 - list.has_le'
 - setoid.has_le
 - con.has_le
 - add_con.has_le
 - omega_complete_partial_order.chain.has_le
 - part_enat.has_le
 - cardinal.has_le
 - linear_pmap.has_le
 - sign_type.has_le
 - finsupp.has_le
 - localization.has_le
 - add_localization.has_le
 - dimension.has_le
 - sum.has_le
 - sum.lex.has_le
 
- lt : α → α → Prop
 
Instances of this typeclass
- with_bot.has_lt
 - with_top.has_lt
 - preorder.to_has_lt
 - nat.has_lt
 - list.has_lt
 - char.has_lt
 - string.has_lt
 - fin.has_lt
 - name.has_lt
 - expr.has_lt
 - expr.coord.has_lt
 - int.has_lt
 - unsigned.has_lt
 - native.float.has_lt
 - pos.has_lt
 - tactic.itauto.prop.has_lt
 - order_dual.has_lt
 - subtype.has_lt
 - tactic.interactive.mono_key.has_lt
 - multiplicative.has_lt
 - additive.has_lt
 - rat.has_lt
 - linarith.monom.has_lt
 - prod.lex.has_lt
 - pos_num.has_lt
 - num.has_lt
 - znum.has_lt
 - cau_seq.has_lt
 - real.has_lt
 - list.has_lt'
 - pi.lex.has_lt
 - localization.has_lt
 - add_localization.has_lt
 - dimension.has_lt
 - sum.has_lt
 - sum.lex.has_lt
 
- append : α → α → α
 
Instances of this typeclass
- andthen : α → β → σ
 
Instances of this typeclass
- union : α → α → α
 
Instances of this typeclass
- inter : α → α → α
 
Instances of this typeclass
- sdiff : α → α → α
 
Instances of this typeclass
- equiv : α → α → Prop
 
Instances of this typeclass
- subset : α → α → Prop
 
Instances of this typeclass
- ssubset : α → α → Prop
 
Instances of this typeclass
Type classes has_emptyc and has_insert are
used to implement polymorphic notation for collections.
Example: {a, b, c} = insert a (insert b (singleton c)).
Note that we use pair in the name of lemmas about {x, y} = insert x (singleton y).
- emptyc : α
 
Instances of this typeclass
- insert : α → γ → γ
 
Instances of this typeclass
- singleton : α → β
 
Instances of this typeclass
- sep : (α → Prop) → γ → γ
 
Type class used to implement the notation { a ∈ c | p a }
Instances of this typeclass
- mem : α → γ → Prop
 
Type class for set-like membership
Instances of this typeclass
- set_like.has_mem
 - list.has_mem
 - local_context.has_mem
 - set.has_mem
 - array.has_mem
 - option.has_mem
 - rbtree.has_mem
 - rbmap.has_mem
 - buffer.has_mem
 - widget_override.interactive_expression.expr.address.has_mem
 - multiset.has_mem
 - finset.has_mem
 - sym.has_mem
 - filter.has_mem
 - filter_basis.has_mem
 - ultrafilter.has_mem
 - cycle.has_mem
 - con.has_mem
 - add_con.has_mem
 - part.has_mem
 - omega_complete_partial_order.chain.has_mem
 - group_filter_basis.has_mem
 - add_group_filter_basis.has_mem
 - ring_filter_basis.has_mem
 - module_filter_basis.group_filter_basis.has_mem
 - associates.factor_set.has_mem
 - composition_series.has_mem
 
- pow : α → β → α
 
Instances of this typeclass
- polynomial.has_pow
 - native.float.has_float_pow
 - native.float.has_nat_pow
 - monoid.has_pow
 - div_inv_monoid.has_pow
 - pi.has_pow
 - order_dual.has_pow
 - order_dual.has_pow'
 - lex.has_pow
 - lex.has_pow'
 - with_zero.nat.has_pow
 - with_zero.int.has_pow
 - add_opposite.has_pow
 - cau_seq.nat.has_pow
 - cau_seq.completion.nat.has_pow
 - prod.has_pow
 - ulift.has_pow
 - submonoid_class.has_pow
 - positive.nat.has_pow
 - subgroup_class.has_zpow
 - subgroup.has_npow
 - subgroup.has_zpow
 - nonneg.has_pow
 - nonneg.has_zpow
 - nat.monoid.prime_pow
 - con.nat.has_pow
 - con.has_zpow
 - subfield.int.has_pow
 - cardinal.has_pow
 - set.Icc.has_pow
 - set.Ioc.has_pow
 - ring_con.nat.has_pow
 - self_adjoint.nat.has_pow
 - self_adjoint.int.has_pow
 - dimension.nat.has_pow
 - dimension.int.has_pow
 - dimension.rat.has_pow
 - ordinal.has_pow
 - complex.has_pow
 - real.has_pow
 - nnreal.real.has_pow
 - ennreal.real.has_pow
 - int.has_pow
 - matrix.special_linear_group.nat.has_pow
 
Instances for bit1
        
        
    - insert_emptyc_eq : ∀ (x : α), {x} = {x}
 
Instances of this typeclass
nat basic instances
This def is "max + 10". It can be used e.g. for postfix operations that should be stronger than application.
Equations
- sizeof : α → ℕ
 
Instances of this typeclass
- default_has_sizeof
 - nat.has_sizeof
 - prod.has_sizeof
 - sum.has_sizeof
 - psum.has_sizeof
 - sigma.has_sizeof
 - psigma.has_sizeof
 - punit.has_sizeof
 - bool.has_sizeof
 - option.has_sizeof
 - list.has_sizeof
 - subtype.has_sizeof
 - bin_tree.has_sizeof_inst
 - inhabited.has_sizeof_inst
 - ulift.has_sizeof_inst
 - plift.has_sizeof_inst
 - has_well_founded.has_sizeof_inst
 - setoid.has_sizeof_inst
 - char.has_sizeof_inst
 - char.has_sizeof
 - string_imp.has_sizeof_inst
 - string.iterator_imp.has_sizeof_inst
 - string.has_sizeof
 - fin.has_sizeof_inst
 - has_repr.has_sizeof_inst
 - ordering.has_sizeof_inst
 - has_lift.has_sizeof_inst
 - has_lift_t.has_sizeof_inst
 - has_coe.has_sizeof_inst
 - has_coe_t.has_sizeof_inst
 - has_coe_to_fun.has_sizeof_inst
 - has_coe_to_sort.has_sizeof_inst
 - has_coe_t_aux.has_sizeof_inst
 - has_to_string.has_sizeof_inst
 - name.has_sizeof_inst
 - functor.has_sizeof_inst
 - has_pure.has_sizeof_inst
 - has_seq.has_sizeof_inst
 - has_seq_left.has_sizeof_inst
 - has_seq_right.has_sizeof_inst
 - applicative.has_sizeof_inst
 - has_orelse.has_sizeof_inst
 - alternative.has_sizeof_inst
 - has_bind.has_sizeof_inst
 - monad.has_sizeof_inst
 - has_monad_lift.has_sizeof_inst
 - has_monad_lift_t.has_sizeof_inst
 - monad_functor.has_sizeof_inst
 - monad_functor_t.has_sizeof_inst
 - monad_run.has_sizeof_inst
 - format.color.has_sizeof_inst
 - monad_fail.has_sizeof_inst
 - pos.has_sizeof_inst
 - binder_info.has_sizeof_inst
 - reducibility_hints.has_sizeof_inst
 - environment.projection_info.has_sizeof_inst
 - environment.implicit_infer_kind.has_sizeof_inst
 - tactic.transparency.has_sizeof_inst
 - tactic.new_goals.has_sizeof_inst
 - tactic.apply_cfg.has_sizeof_inst
 - param_info.has_sizeof_inst
 - fun_info.has_sizeof_inst
 - subsingleton_info.has_sizeof_inst
 - occurrences.has_sizeof_inst
 - tactic.rewrite_cfg.has_sizeof_inst
 - tactic.dsimp_config.has_sizeof_inst
 - tactic.dunfold_config.has_sizeof_inst
 - tactic.delta_config.has_sizeof_inst
 - tactic.unfold_proj_config.has_sizeof_inst
 - tactic.simp_config.has_sizeof_inst
 - tactic.simp_intros_config.has_sizeof_inst
 - interactive.loc.has_sizeof_inst
 - cc_config.has_sizeof_inst
 - congr_arg_kind.has_sizeof_inst
 - tactic.interactive.case_tag.has_sizeof_inst
 - tactic.interactive.case_tag.match_result.has_sizeof_inst
 - tactic.unfold_config.has_sizeof_inst
 - except.has_sizeof_inst
 - except_t.has_sizeof_inst
 - monad_except.has_sizeof_inst
 - monad_except_adapter.has_sizeof_inst
 - state_t.has_sizeof_inst
 - monad_state.has_sizeof_inst
 - monad_state_adapter.has_sizeof_inst
 - reader_t.has_sizeof_inst
 - monad_reader.has_sizeof_inst
 - monad_reader_adapter.has_sizeof_inst
 - option_t.has_sizeof_inst
 - vm_obj_kind.has_sizeof_inst
 - vm_decl_kind.has_sizeof_inst
 - ematch_config.has_sizeof_inst
 - smt_pre_config.has_sizeof_inst
 - smt_config.has_sizeof_inst
 - rsimp.config.has_sizeof_inst
 - expr.coord.has_sizeof_inst
 - preorder.has_sizeof_inst
 - partial_order.has_sizeof_inst
 - linear_order.has_sizeof_inst
 - int.has_sizeof_inst
 - d_array.has_sizeof_inst
 - widget.mouse_event_kind.has_sizeof_inst
 - feature_search.feature_cfg.has_sizeof_inst
 - feature_search.predictor_type.has_sizeof_inst
 - feature_search.predictor_cfg.has_sizeof_inst
 - doc_category.has_sizeof_inst
 - tactic_doc_entry.has_sizeof_inst
 - pempty.has_sizeof_inst
 - function.has_uncurry.has_sizeof_inst
 - dlist.has_sizeof_inst
 - rbnode.has_sizeof_inst
 - rbnode.color.has_sizeof_inst
 - random_gen.has_sizeof_inst
 - std_gen.has_sizeof_inst
 - io.error.has_sizeof_inst
 - io.mode.has_sizeof_inst
 - io.process.stdio.has_sizeof_inst
 - io.process.spawn_args.has_sizeof_inst
 - monad_io.has_sizeof_inst
 - monad_io_terminal.has_sizeof_inst
 - monad_io_net_system.has_sizeof_inst
 - monad_io_file_system.has_sizeof_inst
 - monad_io_environment.has_sizeof_inst
 - monad_io_process.has_sizeof_inst
 - monad_io_random.has_sizeof_inst
 - to_additive.value_type.has_sizeof_inst
 - lint_verbosity.has_sizeof_inst
 - norm_cast.label.has_sizeof_inst
 - fun_like.has_sizeof_inst
 - embedding_like.has_sizeof_inst
 - equiv_like.has_sizeof_inst
 - tactic.explode.status.has_sizeof_inst
 - auto.auto_config.has_sizeof_inst
 - auto.case_option.has_sizeof_inst
 - tactic.itauto.and_kind.has_sizeof_inst
 - tactic.itauto.prop.has_sizeof_inst
 - tactic.itauto.proof.has_sizeof_inst
 - can_lift.has_sizeof_inst
 - _nest_1_1._nest_1_1.tactic.tactic_script._mut_.has_sizeof_inst
 - _nest_1_1.tactic.tactic_script.has_sizeof_inst
 - _nest_1_1.list.tactic.tactic_script.has_sizeof_inst
 - tactic.tactic_script.has_sizeof_inst
 - simps_cfg.has_sizeof_inst
 - applicative_transformation.has_sizeof_inst
 - traversable.has_sizeof_inst
 - is_lawful_traversable.has_sizeof_inst
 - tactic.suggest.head_symbol_match.has_sizeof_inst
 - unique.has_sizeof_inst
 - equiv.has_sizeof_inst
 - equiv_functor.has_sizeof_inst
 - function.embedding.has_sizeof_inst
 - has_compl.has_sizeof_inst
 - has_sup.has_sizeof_inst
 - has_inf.has_sizeof_inst
 - is_nonstrict_strict_order.has_sizeof_inst
 - rel_hom.has_sizeof_inst
 - rel_hom_class.has_sizeof_inst
 - rel_embedding.has_sizeof_inst
 - rel_iso.has_sizeof_inst
 - semilattice_sup.has_sizeof_inst
 - semilattice_inf.has_sizeof_inst
 - lattice.has_sizeof_inst
 - distrib_lattice.has_sizeof_inst
 - has_top.has_sizeof_inst
 - has_bot.has_sizeof_inst
 - order_top.has_sizeof_inst
 - order_bot.has_sizeof_inst
 - bounded_order.has_sizeof_inst
 - tactic.interactive.mono_cfg.has_sizeof_inst
 - tactic.interactive.mono_selection.has_sizeof_inst
 - order_hom.has_sizeof_inst
 - order_iso_class.has_sizeof_inst
 - has_vadd.has_sizeof_inst
 - has_vsub.has_sizeof_inst
 - has_smul.has_sizeof_inst
 - semigroup.has_sizeof_inst
 - add_semigroup.has_sizeof_inst
 - comm_semigroup.has_sizeof_inst
 - add_comm_semigroup.has_sizeof_inst
 - left_cancel_semigroup.has_sizeof_inst
 - add_left_cancel_semigroup.has_sizeof_inst
 - right_cancel_semigroup.has_sizeof_inst
 - add_right_cancel_semigroup.has_sizeof_inst
 - mul_one_class.has_sizeof_inst
 - add_zero_class.has_sizeof_inst
 - add_monoid.has_sizeof_inst
 - monoid.has_sizeof_inst
 - add_comm_monoid.has_sizeof_inst
 - comm_monoid.has_sizeof_inst
 - add_left_cancel_monoid.has_sizeof_inst
 - left_cancel_monoid.has_sizeof_inst
 - add_right_cancel_monoid.has_sizeof_inst
 - right_cancel_monoid.has_sizeof_inst
 - add_cancel_monoid.has_sizeof_inst
 - cancel_monoid.has_sizeof_inst
 - add_cancel_comm_monoid.has_sizeof_inst
 - cancel_comm_monoid.has_sizeof_inst
 - has_involutive_neg.has_sizeof_inst
 - has_involutive_inv.has_sizeof_inst
 - div_inv_monoid.has_sizeof_inst
 - sub_neg_monoid.has_sizeof_inst
 - neg_zero_class.has_sizeof_inst
 - sub_neg_zero_monoid.has_sizeof_inst
 - inv_one_class.has_sizeof_inst
 - div_inv_one_monoid.has_sizeof_inst
 - subtraction_monoid.has_sizeof_inst
 - division_monoid.has_sizeof_inst
 - subtraction_comm_monoid.has_sizeof_inst
 - division_comm_monoid.has_sizeof_inst
 - group.has_sizeof_inst
 - add_group.has_sizeof_inst
 - comm_group.has_sizeof_inst
 - add_comm_group.has_sizeof_inst
 - ordered_comm_monoid.has_sizeof_inst
 - ordered_add_comm_monoid.has_sizeof_inst
 - linear_ordered_add_comm_monoid.has_sizeof_inst
 - linear_ordered_comm_monoid.has_sizeof_inst
 - linear_ordered_add_comm_monoid_with_top.has_sizeof_inst
 - ordered_cancel_add_comm_monoid.has_sizeof_inst
 - ordered_cancel_comm_monoid.has_sizeof_inst
 - linear_ordered_cancel_add_comm_monoid.has_sizeof_inst
 - linear_ordered_cancel_comm_monoid.has_sizeof_inst
 - ordered_add_comm_group.has_sizeof_inst
 - ordered_comm_group.has_sizeof_inst
 - linear_ordered_add_comm_group.has_sizeof_inst
 - linear_ordered_add_comm_group_with_top.has_sizeof_inst
 - linear_ordered_comm_group.has_sizeof_inst
 - add_comm_group.positive_cone.has_sizeof_inst
 - add_comm_group.total_positive_cone.has_sizeof_inst
 - mul_zero_class.has_sizeof_inst
 - semigroup_with_zero.has_sizeof_inst
 - mul_zero_one_class.has_sizeof_inst
 - monoid_with_zero.has_sizeof_inst
 - cancel_monoid_with_zero.has_sizeof_inst
 - comm_monoid_with_zero.has_sizeof_inst
 - cancel_comm_monoid_with_zero.has_sizeof_inst
 - group_with_zero.has_sizeof_inst
 - comm_group_with_zero.has_sizeof_inst
 - zero_hom.has_sizeof_inst
 - zero_hom_class.has_sizeof_inst
 - add_hom.has_sizeof_inst
 - add_hom_class.has_sizeof_inst
 - add_monoid_hom.has_sizeof_inst
 - add_monoid_hom_class.has_sizeof_inst
 - one_hom.has_sizeof_inst
 - one_hom_class.has_sizeof_inst
 - mul_hom.has_sizeof_inst
 - mul_hom_class.has_sizeof_inst
 - monoid_hom.has_sizeof_inst
 - monoid_hom_class.has_sizeof_inst
 - monoid_with_zero_hom.has_sizeof_inst
 - monoid_with_zero_hom_class.has_sizeof_inst
 - add_equiv.has_sizeof_inst
 - add_equiv_class.has_sizeof_inst
 - mul_equiv.has_sizeof_inst
 - mul_equiv_class.has_sizeof_inst
 - units.has_sizeof_inst
 - add_units.has_sizeof_inst
 - has_himp.has_sizeof_inst
 - has_hnot.has_sizeof_inst
 - generalized_heyting_algebra.has_sizeof_inst
 - generalized_coheyting_algebra.has_sizeof_inst
 - heyting_algebra.has_sizeof_inst
 - coheyting_algebra.has_sizeof_inst
 - biheyting_algebra.has_sizeof_inst
 - generalized_boolean_algebra.has_sizeof_inst
 - boolean_algebra.has_sizeof_inst
 - has_Sup.has_sizeof_inst
 - has_Inf.has_sizeof_inst
 - complete_semilattice_Sup.has_sizeof_inst
 - complete_semilattice_Inf.has_sizeof_inst
 - complete_lattice.has_sizeof_inst
 - complete_linear_order.has_sizeof_inst
 - order.frame.has_sizeof_inst
 - order.coframe.has_sizeof_inst
 - complete_distrib_lattice.has_sizeof_inst
 - complete_boolean_algebra.has_sizeof_inst
 - galois_insertion.has_sizeof_inst
 - galois_coinsertion.has_sizeof_inst
 - canonically_ordered_add_monoid.has_sizeof_inst
 - canonically_ordered_monoid.has_sizeof_inst
 - canonically_linear_ordered_add_monoid.has_sizeof_inst
 - canonically_linear_ordered_monoid.has_sizeof_inst
 - zero_le_one_class.has_sizeof_inst
 - has_nat_cast.has_sizeof_inst
 - add_monoid_with_one.has_sizeof_inst
 - add_comm_monoid_with_one.has_sizeof_inst
 - has_int_cast.has_sizeof_inst
 - add_group_with_one.has_sizeof_inst
 - add_comm_group_with_one.has_sizeof_inst
 - distrib.has_sizeof_inst
 - left_distrib_class.has_sizeof_inst
 - right_distrib_class.has_sizeof_inst
 - non_unital_non_assoc_semiring.has_sizeof_inst
 - non_unital_semiring.has_sizeof_inst
 - non_assoc_semiring.has_sizeof_inst
 - semiring.has_sizeof_inst
 - non_unital_comm_semiring.has_sizeof_inst
 - comm_semiring.has_sizeof_inst
 - has_distrib_neg.has_sizeof_inst
 - non_unital_non_assoc_ring.has_sizeof_inst
 - non_unital_ring.has_sizeof_inst
 - non_assoc_ring.has_sizeof_inst
 - ring.has_sizeof_inst
 - non_unital_comm_ring.has_sizeof_inst
 - comm_ring.has_sizeof_inst
 - linear_ordered_comm_monoid_with_zero.has_sizeof_inst
 - ordered_semiring.has_sizeof_inst
 - ordered_comm_semiring.has_sizeof_inst
 - ordered_ring.has_sizeof_inst
 - ordered_comm_ring.has_sizeof_inst
 - strict_ordered_semiring.has_sizeof_inst
 - strict_ordered_comm_semiring.has_sizeof_inst
 - strict_ordered_ring.has_sizeof_inst
 - strict_ordered_comm_ring.has_sizeof_inst
 - linear_ordered_semiring.has_sizeof_inst
 - linear_ordered_comm_semiring.has_sizeof_inst
 - linear_ordered_ring.has_sizeof_inst
 - linear_ordered_comm_ring.has_sizeof_inst
 - add_action.has_sizeof_inst
 - mul_action.has_sizeof_inst
 - smul_zero_class.has_sizeof_inst
 - distrib_smul.has_sizeof_inst
 - distrib_mul_action.has_sizeof_inst
 - mul_distrib_mul_action.has_sizeof_inst
 - canonically_ordered_comm_semiring.has_sizeof_inst
 - conditionally_complete_lattice.has_sizeof_inst
 - conditionally_complete_linear_order.has_sizeof_inst
 - conditionally_complete_linear_order_bot.has_sizeof_inst
 - has_abs.has_sizeof_inst
 - has_pos_part.has_sizeof_inst
 - has_neg_part.has_sizeof_inst
 - linear_ordered_comm_group_with_zero.has_sizeof_inst
 - non_unital_ring_hom.has_sizeof_inst
 - non_unital_ring_hom_class.has_sizeof_inst
 - ring_hom.has_sizeof_inst
 - ring_hom_class.has_sizeof_inst
 - invertible.has_sizeof_inst
 - rat.has_sizeof_inst
 - has_rat_cast.has_sizeof_inst
 - division_semiring.has_sizeof_inst
 - division_ring.has_sizeof_inst
 - semifield.has_sizeof_inst
 - field.has_sizeof_inst
 - linear_ordered_semifield.has_sizeof_inst
 - linear_ordered_field.has_sizeof_inst
 - expr_lens.dir.has_sizeof_inst
 - tactic.abel.normalize_mode.has_sizeof_inst
 - tactic.ring.normalize_mode.has_sizeof_inst
 - tactic.ring.ring_nf_cfg.has_sizeof_inst
 - linarith.ineq.has_sizeof_inst
 - linarith.comp.has_sizeof_inst
 - linarith.comp_source.has_sizeof_inst
 - pos_num.has_sizeof_inst
 - num.has_sizeof_inst
 - znum.has_sizeof_inst
 - tree.has_sizeof_inst
 - nonneg_hom_class.has_sizeof_inst
 - subadditive_hom_class.has_sizeof_inst
 - submultiplicative_hom_class.has_sizeof_inst
 - mul_le_add_hom_class.has_sizeof_inst
 - nonarchimedean_hom_class.has_sizeof_inst
 - add_group_seminorm_class.has_sizeof_inst
 - group_seminorm_class.has_sizeof_inst
 - add_group_norm_class.has_sizeof_inst
 - group_norm_class.has_sizeof_inst
 - ring_seminorm_class.has_sizeof_inst
 - ring_norm_class.has_sizeof_inst
 - mul_ring_seminorm_class.has_sizeof_inst
 - mul_ring_norm_class.has_sizeof_inst
 - tactic.positivity.order_rel.has_sizeof_inst
 - floor_semiring.has_sizeof_inst
 - floor_ring.has_sizeof_inst
 - euclidean_domain.has_sizeof_inst
 - ring_equiv.has_sizeof_inst
 - ring_equiv_class.has_sizeof_inst
 - mul_semiring_action.has_sizeof_inst
 - set_like.has_sizeof_inst
 - has_star.has_sizeof_inst
 - star_mem_class.has_sizeof_inst
 - has_involutive_star.has_sizeof_inst
 - star_semigroup.has_sizeof_inst
 - star_add_monoid.has_sizeof_inst
 - star_ring.has_sizeof_inst
 - star_hom_class.has_sizeof_inst
 - absolute_value.has_sizeof_inst
 - real.has_sizeof_inst
 - multiset.has_sizeof
 - tactic.interactive.rep_arity.has_sizeof_inst
 - finset.has_sizeof_inst
 - fintype.has_sizeof_inst
 - top_hom.has_sizeof_inst
 - bot_hom.has_sizeof_inst
 - bounded_order_hom.has_sizeof_inst
 - top_hom_class.has_sizeof_inst
 - bot_hom_class.has_sizeof_inst
 - bounded_order_hom_class.has_sizeof_inst
 - sup_hom.has_sizeof_inst
 - inf_hom.has_sizeof_inst
 - sup_bot_hom.has_sizeof_inst
 - inf_top_hom.has_sizeof_inst
 - lattice_hom.has_sizeof_inst
 - bounded_lattice_hom.has_sizeof_inst
 - sup_hom_class.has_sizeof_inst
 - inf_hom_class.has_sizeof_inst
 - sup_bot_hom_class.has_sizeof_inst
 - inf_top_hom_class.has_sizeof_inst
 - lattice_hom_class.has_sizeof_inst
 - bounded_lattice_hom_class.has_sizeof_inst
 - smul_with_zero.has_sizeof_inst
 - mul_action_with_zero.has_sizeof_inst
 - module.has_sizeof_inst
 - module.core.has_sizeof_inst
 - locally_finite_order.has_sizeof_inst
 - locally_finite_order_top.has_sizeof_inst
 - locally_finite_order_bot.has_sizeof_inst
 - mul_action_hom.has_sizeof_inst
 - smul_hom_class.has_sizeof_inst
 - distrib_mul_action_hom.has_sizeof_inst
 - distrib_mul_action_hom_class.has_sizeof_inst
 - mul_semiring_action_hom.has_sizeof_inst
 - mul_semiring_action_hom_class.has_sizeof_inst
 - linear_map.has_sizeof_inst
 - semilinear_map_class.has_sizeof_inst
 - linear_map.compatible_smul.has_sizeof_inst
 - linear_equiv.has_sizeof_inst
 - semilinear_equiv_class.has_sizeof_inst
 - normalization_monoid.has_sizeof_inst
 - gcd_monoid.has_sizeof_inst
 - normalized_gcd_monoid.has_sizeof_inst
 - subsemigroup.has_sizeof_inst
 - add_subsemigroup.has_sizeof_inst
 - submonoid.has_sizeof_inst
 - add_submonoid.has_sizeof_inst
 - encodable.has_sizeof_inst
 - subgroup.has_sizeof_inst
 - add_subgroup.has_sizeof_inst
 - smul_mem_class.has_sizeof_inst
 - vadd_mem_class.has_sizeof_inst
 - sub_mul_action.has_sizeof_inst
 - submodule.has_sizeof_inst
 - dfinsupp.has_sizeof_inst
 - finsupp.has_sizeof_inst
 - subsemiring.has_sizeof_inst
 - subring.has_sizeof_inst
 - algebra.has_sizeof_inst
 - canonically_linear_ordered_semifield.has_sizeof_inst
 - add_group_seminorm.has_sizeof_inst
 - group_seminorm.has_sizeof_inst
 - nonarch_add_group_seminorm.has_sizeof_inst
 - add_group_norm.has_sizeof_inst
 - group_norm.has_sizeof_inst
 - nonarch_add_group_norm.has_sizeof_inst
 - nonarch_add_group_seminorm_class.has_sizeof_inst
 - nonarch_add_group_norm_class.has_sizeof_inst
 - denumerable.has_sizeof_inst
 - filter.has_sizeof_inst
 - filter_basis.has_sizeof_inst
 - filter.countable_filter_basis.has_sizeof_inst
 - Sup_hom.has_sizeof_inst
 - Inf_hom.has_sizeof_inst
 - frame_hom.has_sizeof_inst
 - complete_lattice_hom.has_sizeof_inst
 - Sup_hom_class.has_sizeof_inst
 - Inf_hom_class.has_sizeof_inst
 - frame_hom_class.has_sizeof_inst
 - complete_lattice_hom_class.has_sizeof_inst
 - tactic.decl_reducibility.has_sizeof_inst
 - flag.has_sizeof_inst
 - ultrafilter.has_sizeof_inst
 - topological_space.has_sizeof_inst
 - bornology.has_sizeof_inst
 - upper_set.has_sizeof_inst
 - lower_set.has_sizeof_inst
 - compact_exhaustion.has_sizeof_inst
 - succ_order.has_sizeof_inst
 - pred_order.has_sizeof_inst
 - tactic.tfae.arrow.has_sizeof_inst
 - uniform_space.core.has_sizeof_inst
 - uniform_space.has_sizeof_inst
 - homeomorph.has_sizeof_inst
 - uniform_equiv.has_sizeof_inst
 - has_bracket.has_sizeof_inst
 - has_quotient.has_sizeof_inst
 - add_con.has_sizeof_inst
 - con.has_sizeof_inst
 - add_torsor.has_sizeof_inst
 - continuous_map.has_sizeof_inst
 - continuous_map_class.has_sizeof_inst
 - add_group_with_zero_nhd.has_sizeof_inst
 - group_topology.has_sizeof_inst
 - add_group_topology.has_sizeof_inst
 - has_edist.has_sizeof_inst
 - pseudo_emetric_space.has_sizeof_inst
 - emetric_space.has_sizeof_inst
 - has_dist.has_sizeof_inst
 - pseudo_metric_space.has_sizeof_inst
 - has_nndist.has_sizeof_inst
 - metric_space.has_sizeof_inst
 - abstract_completion.has_sizeof_inst
 - ring_topology.has_sizeof_inst
 - subfield.has_sizeof_inst
 - locally_bounded_map.has_sizeof_inst
 - locally_bounded_map_class.has_sizeof_inst
 - isometry_equiv.has_sizeof_inst
 - has_norm.has_sizeof_inst
 - has_nnnorm.has_sizeof_inst
 - seminormed_add_group.has_sizeof_inst
 - seminormed_group.has_sizeof_inst
 - normed_add_group.has_sizeof_inst
 - normed_group.has_sizeof_inst
 - seminormed_add_comm_group.has_sizeof_inst
 - seminormed_comm_group.has_sizeof_inst
 - normed_add_comm_group.has_sizeof_inst
 - normed_comm_group.has_sizeof_inst
 - alg_hom.has_sizeof_inst
 - alg_hom_class.has_sizeof_inst
 - alg_equiv.has_sizeof_inst
 - alg_equiv_class.has_sizeof_inst
 - part.has_sizeof_inst
 - omega_complete_partial_order.has_sizeof_inst
 - omega_complete_partial_order.continuous_hom.has_sizeof_inst
 - non_unital_alg_hom.has_sizeof_inst
 - non_unital_alg_hom_class.has_sizeof_inst
 - tensor_product.compatible_smul.has_sizeof_inst
 - idem_semiring.has_sizeof_inst
 - idem_comm_semiring.has_sizeof_inst
 - has_kstar.has_sizeof_inst
 - kleene_algebra.has_sizeof_inst
 - linear_pmap.has_sizeof_inst
 - basis.has_sizeof_inst
 - subalgebra.has_sizeof_inst
 - non_unital_semi_normed_ring.has_sizeof_inst
 - semi_normed_ring.has_sizeof_inst
 - non_unital_normed_ring.has_sizeof_inst
 - normed_ring.has_sizeof_inst
 - normed_division_ring.has_sizeof_inst
 - semi_normed_comm_ring.has_sizeof_inst
 - normed_comm_ring.has_sizeof_inst
 - normed_field.has_sizeof_inst
 - nontrivially_normed_field.has_sizeof_inst
 - densely_normed_field.has_sizeof_inst
 - star_ordered_ring.has_sizeof_inst
 - continuous_linear_map.has_sizeof_inst
 - continuous_semilinear_map_class.has_sizeof_inst
 - continuous_linear_equiv.has_sizeof_inst
 - continuous_semilinear_equiv_class.has_sizeof_inst
 - normed_space.has_sizeof_inst
 - normed_algebra.has_sizeof_inst
 - local_equiv.has_sizeof_inst
 - topological_space.opens.has_sizeof_inst
 - topological_space.open_nhds_of.has_sizeof_inst
 - local_homeomorph.has_sizeof_inst
 - BET.system.has_sizeof_inst
 - normed_ordered_add_group.has_sizeof_inst
 - normed_ordered_group.has_sizeof_inst
 - normed_linear_ordered_add_group.has_sizeof_inst
 - normed_linear_ordered_group.has_sizeof_inst
 - normed_linear_ordered_field.has_sizeof_inst
 - affine_map.has_sizeof_inst
 - affine_equiv.has_sizeof_inst
 - affine_subspace.has_sizeof_inst
 - closure_operator.has_sizeof_inst
 - lower_adjoint.has_sizeof_inst
 - sign_type.has_sizeof_inst
 - affine.simplex.has_sizeof_inst
 - affine_basis.has_sizeof_inst
 - path.has_sizeof_inst
 - linear_isometry.has_sizeof_inst
 - semilinear_isometry_class.has_sizeof_inst
 - linear_isometry_equiv.has_sizeof_inst
 - semilinear_isometry_equiv_class.has_sizeof_inst
 - normed_add_torsor.has_sizeof_inst
 - seminorm.has_sizeof_inst
 - seminorm_class.has_sizeof_inst
 - group_filter_basis.has_sizeof_inst
 - add_group_filter_basis.has_sizeof_inst
 - ring_filter_basis.has_sizeof_inst
 - module_filter_basis.has_sizeof_inst
 - multilinear_map.has_sizeof_inst
 - continuous_multilinear_map.has_sizeof_inst
 - ring_con.has_sizeof_inst
 - polynomial.has_sizeof_inst
 - valuation.has_sizeof_inst
 - valuation_class.has_sizeof_inst
 - add_submonoid.localization_map.has_sizeof_inst
 - submonoid.localization_map.has_sizeof_inst
 - submonoid.localization_with_zero_map.has_sizeof_inst
 - tactic.ring_exp.coeff.has_sizeof_inst
 - tactic.ring_exp.ex_type.has_sizeof_inst
 - normed_add_group_hom.has_sizeof_inst
 - non_unital_star_alg_hom.has_sizeof_inst
 - non_unital_star_alg_hom_class.has_sizeof_inst
 - star_alg_hom.has_sizeof_inst
 - star_alg_hom_class.has_sizeof_inst
 - star_alg_equiv.has_sizeof_inst
 - star_alg_equiv_class.has_sizeof_inst
 - star_subalgebra.has_sizeof_inst
 - is_R_or_C.has_sizeof_inst
 - fin_enum.has_sizeof_inst
 - has_time.has_sizeof_inst
 - has_length.has_sizeof_inst
 - has_mass.has_sizeof_inst
 - has_amount_of_substance.has_sizeof_inst
 - has_electric_current.has_sizeof_inst
 - has_temperature.has_sizeof_inst
 - has_luminous_intensity.has_sizeof_inst
 - system1.has_sizeof_inst
 - initial_seg.has_sizeof_inst
 - principal_seg.has_sizeof_inst
 - Well_order.has_sizeof_inst
 - complex.has_sizeof_inst
 - divisible_by.has_sizeof_inst
 - rootable_by.has_sizeof_inst
 - has_btw.has_sizeof_inst
 - has_sbtw.has_sizeof_inst
 - circular_preorder.has_sizeof_inst
 - circular_partial_order.has_sizeof_inst
 - circular_order.has_sizeof_inst
 - affine_isometry.has_sizeof_inst
 - affine_isometry_equiv.has_sizeof_inst
 - bifunctor.has_sizeof_inst
 - is_lawful_bifunctor.has_sizeof_inst
 - jordan_holder_lattice.has_sizeof_inst
 - composition_series.has_sizeof_inst
 - pequiv.has_sizeof_inst
 - composition.has_sizeof_inst
 - composition_as_set.has_sizeof_inst
 - nat.partition.has_sizeof_inst
 - alternating_map.has_sizeof_inst
 - topological_space.closeds.has_sizeof_inst
 - topological_space.clopens.has_sizeof_inst
 - topological_space.compacts.has_sizeof_inst
 - topological_space.nonempty_compacts.has_sizeof_inst
 - topological_space.positive_compacts.has_sizeof_inst
 - topological_space.compact_opens.has_sizeof_inst
 - continuous_linear_map.nonlinear_right_inverse.has_sizeof_inst
 - semidirect_product.has_sizeof_inst
 - bilin_form.has_sizeof_inst
 - has_inner.has_sizeof_inst
 - inner_product_space.has_sizeof_inst
 - inner_product_space.core.has_sizeof_inst
 - motion.has_sizeof_inst
 - motion_cont_diff_everywhere.has_sizeof_inst
 - thermo_system.has_sizeof_inst
 - ideal_gas.has_sizeof_inst
 - module_doc_info.has_sizeof_inst
 - ext_tactic_doc_entry.has_sizeof_inst
 
Declare sizeof instances and lemmas for types declared before has_sizeof. From now on, the inductive compiler will automatically generate sizeof instances and lemmas.
Every type α has a default has_sizeof instance that just returns 0 for every element of α
Equations
- default.sizeof α a = 0
 
Equations
- default_has_sizeof α = {sizeof := default.sizeof α}
 
Equations
- nat.has_sizeof = {sizeof := nat.sizeof}
 
Equations
- prod.has_sizeof α β = {sizeof := prod.sizeof _inst_2}
 
Equations
- sum.has_sizeof α β = {sizeof := sum.sizeof _inst_2}
 
Equations
- psum.has_sizeof α β = {sizeof := psum.sizeof _inst_2}
 
Equations
- sigma.has_sizeof α β = {sizeof := sigma.sizeof (λ (a : α), _inst_2 a)}
 
Equations
- psigma.has_sizeof α β = {sizeof := psigma.sizeof (λ (a : α), _inst_2 a)}
 
Equations
- punit.has_sizeof = {sizeof := punit.sizeof}
 
Equations
- bool.has_sizeof = {sizeof := bool.sizeof}
 
Equations
- option.has_sizeof α = {sizeof := option.sizeof _inst_1}
 
Equations
- list.has_sizeof α = {sizeof := list.sizeof _inst_1}
 
Equations
- subtype.has_sizeof p = {sizeof := subtype.sizeof p}
 
- empty : Π {α : Type u}, bin_tree α
 - leaf : Π {α : Type u}, α → bin_tree α
 - node : Π {α : Type u}, bin_tree α → bin_tree α → bin_tree α
 
Auxiliary datatype for #[ ... ] notation. #[1, 2, 3, 4] is notation for
bin_tree.node (bin_tree.node (bin_tree.leaf 1) (bin_tree.leaf 2)) (bin_tree.node (bin_tree.leaf 3) (bin_tree.leaf 4))
We use this notation to input long sequences without exhausting the system stack space.
Later, we define a coercion from bin_tree into list.
Instances for bin_tree
        
        - bin_tree.has_sizeof_inst
 - list.bin_tree_to_list
 - bin_tree.inhabited
 
Like by apply_instance, but not dependent on the tactic framework.