{-# OPTIONS --cubical-compatible --safe #-}
module Data.List.Relation.Ternary.Appending.Propositional.Properties {a} {A : Set a} where
open import Data.List.Base as List using (List; [])
import Data.List.Properties as Listₚ
import Data.List.Relation.Binary.Pointwise as Pw using (Pointwise-≡⇒≡)
open import Data.List.Relation.Binary.Equality.Propositional using (_≋_)
open import Data.List.Relation.Ternary.Appending.Propositional {A = A}
open import Function.Base using (_∘′_)
open import Relation.Binary.PropositionalEquality.Core using (_≡_)
open import Relation.Binary.PropositionalEquality.Properties using (setoid)
import Data.List.Relation.Ternary.Appending.Setoid.Properties (setoid A)
as Appendingₚ
private
variable
as bs cs : List A
open Appendingₚ public
hiding ([]++⁻¹; ++[]⁻¹)
[]++⁻¹ : Appending [] bs cs → bs ≡ cs
[]++⁻¹ = Pw.Pointwise-≡⇒≡ ∘′ Appendingₚ.[]++⁻¹
++[]⁻¹ : Appending as [] cs → as ≡ cs
++[]⁻¹ = Pw.Pointwise-≡⇒≡ ∘′ Appendingₚ.++[]⁻¹