Built with Alectryon, running Coq+SerAPI v8.18.0+0.18.3. Bubbles () indicate interactive fragments: hover for details, tap to reveal contents. Use Ctrl+↑ Ctrl+↓ to navigate, Ctrl+🖱️ to focus. On Mac, use instead of Ctrl.
(** * Opposite adjunction [F ⊣ G → Gᵒᵖ ⊣ Fᵒᵖ] *)
[Loading ML file number_string_notation_plugin.cmxs (using legacy method) ... done]
Require Import Functor.Dual NaturalTransformation.Dual. Require Import Adjoint.UnitCounit Adjoint.Core. Set Universe Polymorphism. Set Implicit Arguments. Generalizable All Variables. Set Asymmetric Patterns. Local Open Scope category_scope. (** ** Definition of [Aᵒᵖ] *) Definition opposite C D (F : Functor C D) (G : Functor D C) (A : F -| G) : G^op -| F^op := @Build_AdjunctionUnitCounit _ _ (G^op) (F^op) ((counit A)^op) ((unit A)^op) (unit_counit_equation_2 A) (unit_counit_equation_1 A). Local Notation "A ^op" := (opposite A) : adjunction_scope. Local Open Scope adjunction_scope. (** ** [ᵒᵖ] is judgmentally involutive *) Definition opposite_involutive C D (F : Functor C D) (G : Functor D C) (A : F -| G) : (A^op)^op = A := idpath. Module Export AdjointDualNotations. Notation "A ^op" := (opposite A) : adjunction_scope. End AdjointDualNotations.