  A permutation is said to be a square if it can be obtained by shuffling two
order-isomorphic patterns. The definition is intended to be the natural
counterpart to the ordinary shuffle of words and languages. In this paper, we
tackle the problem of recognizing square permutations from both the point of
view of algebra and algorithms. On the one hand, we present some algebraic and
combinatorial properties of the shuffle product of permutations. We follow an
unusual line consisting in defining the shuffle of permutations by means of an
unshuffling operator, known as a coproduct. This strategy allows to obtain easy
proofs for algebraic and combinatorial properties of our shuffle product. We
besides exhibit a bijection between square $(213,231)$-avoiding permutations
and square binary words. On the other hand, by using a pattern avoidance
criterion on directed perfect matchings, we prove that recognizing square
permutations is {\bf NP}-complete.
