Given a permutation π (called the text) of size n and another permutation σ (called the pattern) of size k, the NP-complete permutation pattern matching problem asks whether σ occurs in π as an orderisomorphic subsequence. In this paper, we focus on separable permutations (those permutations that avoid both 2413 and 3142, or, equivalently, that admit a separating tree). The main contributions presented in this paper are as follows. – We simplify the algorithm of Ibarra (Finding pattern matchings for permutations, Information Processing Letters 61 (1997), no. 6) to detect an occurrence of a separable permutation in a permutation and show how to reduce the space complexity from O(n3k) to O(n3 log k). – In case both the text and the pattern are separable permutations, we give a more practicable O(n2k) time and O(nk) space algorithm. Furthermore, we show how to use this approach to decide in O(nk3ℓ2) time whether a separable permutation of size n is a disjoint union of two given permutations of size k and ℓ. – Given a permutation of size n and a separable permutation of size k, we propose an O(n6k) time and O(n4 log k) space algorithm to compute the largest common separable permutation that occurs in the two input permutations. This improves upon the existing O(n8) time algorithm by Rossin and Bouvel (The longest common pattern problem for two permutations, Pure Mathematics and Applications 17 (2006)). – Finally, we give a O(n6k) time and space algorithm to detect an occurrence of a bivincular separable permutation in a permutation. (Bivincular patterns generalize classical permutations by requiring that positions and values involved in an occurrence may be forced to be adjacent). © Springer International Publishing AG 2016.
Pattern matching for separable permutations
RIZZI, ROMEO;
2016-01-01
Abstract
Given a permutation π (called the text) of size n and another permutation σ (called the pattern) of size k, the NP-complete permutation pattern matching problem asks whether σ occurs in π as an orderisomorphic subsequence. In this paper, we focus on separable permutations (those permutations that avoid both 2413 and 3142, or, equivalently, that admit a separating tree). The main contributions presented in this paper are as follows. – We simplify the algorithm of Ibarra (Finding pattern matchings for permutations, Information Processing Letters 61 (1997), no. 6) to detect an occurrence of a separable permutation in a permutation and show how to reduce the space complexity from O(n3k) to O(n3 log k). – In case both the text and the pattern are separable permutations, we give a more practicable O(n2k) time and O(nk) space algorithm. Furthermore, we show how to use this approach to decide in O(nk3ℓ2) time whether a separable permutation of size n is a disjoint union of two given permutations of size k and ℓ. – Given a permutation of size n and a separable permutation of size k, we propose an O(n6k) time and O(n4 log k) space algorithm to compute the largest common separable permutation that occurs in the two input permutations. This improves upon the existing O(n8) time algorithm by Rossin and Bouvel (The longest common pattern problem for two permutations, Pure Mathematics and Applications 17 (2006)). – Finally, we give a O(n6k) time and space algorithm to detect an occurrence of a bivincular separable permutation in a permutation. (Bivincular patterns generalize classical permutations by requiring that positions and values involved in an occurrence may be forced to be adjacent). © Springer International Publishing AG 2016.File | Dimensione | Formato | |
---|---|---|---|
PatternMatchingSeparablePermutations2016.pdf
solo utenti autorizzati
Tipologia:
Versione dell'editore
Licenza:
Accesso ristretto
Dimensione
554.91 kB
Formato
Adobe PDF
|
554.91 kB | Adobe PDF | Visualizza/Apri Richiedi una copia |
I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.