have : G.bar ∘ G.bar = id := by
  funext x
  simp only [Function.comp, bar_bar, id_eq]
V : Type u
E : Type v
inst✝¹ : DecidableEq V
inst✝ : DecidableEq E
G✝ : Graph V E
x₀✝ : V
G : Graph V E
x₀ τ : V
p : EdgePath G x₀ τ
hyp : reduced p
⊢ List.map (G.bar ∘ G.bar) (EdgePath.toList p) = EdgePath.toList p
V : Type u
E : Type v
inst✝¹ : DecidableEq V
inst✝ : DecidableEq E
G✝ : Graph V E
x₀✝ : V
G : Graph V E
x₀ τ : V
p : EdgePath G x₀ τ
hyp : reduced p
this : G.bar ∘ G.bar = id
⊢ List.map (G.bar ∘ G.bar) (EdgePath.toList p) = EdgePath.toList p