Aligned Phonex
Aligned phonex extends the phonex language to match patterns across aligned transcription pairs. When two IPA transcriptions are aligned (e.g., IPA Target vs. IPA Actual), aligned phonex lets you match phones in one transcript while constraining what appears at the corresponding position in the other.
This is used in Phon to detect phonological processes such as deletion, epenthesis, metathesis, and assimilation by examining the relationship between target and actual productions.
Prerequisites
Aligned phonex requires that the IPA Target and IPA Actual tiers have been aligned using Phon's syllabification and alignment tools. The alignment produces a phone map that pairs phones between the two transcriptions, identifying which phones correspond and where insertions or deletions occur.
The Alignment Operator (↔)
The ↔ operator constrains a phone or group to match against aligned elements in the other transcript. It appears after the element it constrains:
phone ↔ aligned_exprPhone-to-Phone Alignment
Match b in the target aligned with p in the actual:
b↔pPhone-to-Deletion Alignment
Match b in the target where the actual has a gap (deletion):
b↔∅Insertion (Epenthesis)
Match a gap in the target where the actual has a consonant (insertion):
∅↔\cGroup-to-Expression Alignment
Align an entire group with an expression in the other transcript:
(\c\v)↔\vThis matches a CV sequence in the target where the aligned portion in the actual is just a vowel.
The Deletion Symbol (∅)
∅ (U+2205, null set) matches an insertion or deletion point in the alignment — a position where one transcript has a phone but the other has a gap. To type this character use the autocomplete feature available by pressing Tab inside phonex input fields.
Detecting Deletions
Find phones in the target with no match in the actual:
b↔∅ \vThis finds a deleted b followed by a vowel.
Detecting Insertions
Find gaps in the target where the actual has a phone:
∅↔\cThis finds a consonant insertion.
Capturing Insertions
Wrap the ∅ and its alignment in a group to capture what was inserted:
(∅↔\c)The captured group's match will be empty (since the target has no phone there), but the aligned group content returns the inserted phone from the actual transcript.
Aligned Group References
After matching and naming a group, use ↔\{name} to constrain alignment at another position:
(C=\c) ↔ \{C}This requires that the consonant C in the target is aligned with itself in the actual. This is commonly used in reduplication and assimilation patterns.
Deferred (Forward) References
When a referenced group hasn't been matched yet, phonex defers evaluation until the full pattern has matched, then verifies the reference:
(C1=\c)↔(\{C2}) .+ (C2=\c)↔(\{C1})This pattern detects metathesis (sound transposition): C1 in the target is aligned with C2's content, and C2 is aligned with C1's content. The forward reference to C2 in the first alignment is automatically deferred.
Feature-Based Alignment
Use ↔{features({name})} to match based on phonetic features of the aligned phone rather than exact identity:
(C1=\c:O) ↔{ P({C2}) }This means: C1 in the target is aligned with a phone whose primary place features match those of group C2.
Feature Dimension Functions
Dimension functions extract specific feature subsets for comparison. The function name is a string of characters that selects which phonological dimensions to compare (e.g., P for primary place, V for voicing, M for primary manner). Characters can be combined in any order. See the Groups page for the complete list of dimension characters and examples.
(C1=\c:O) ↔{ PV({C2}) }
(C2=\c:O) ↔(\{C2})
(?< {^ PV({C1})} )This matches regressive place assimilation: C1's aligned phone has the place and voicing features of C2, C2 is aligned with itself, and C1's original place and voicing differ from C2's.
Flags
/a — Requires Alignment
The /a flag indicates the pattern requires an alignment to be provided. It is set automatically when the pattern contains ↔ or ∅, but can be set explicitly when needed.
/f — Deferred Matching
The /f flag enables deferred matching for forward references. It is set automatically when the pattern contains forward group references in aligned expressions. In deferred mode, unresolved references initially succeed, then the matcher re-checks them once all groups are defined.
Examples
Consonant Deletion
Find a deleted consonant followed by a vowel:
b↔∅ \vEpenthesis
Find an inserted consonant before a vowel:
∅↔\c \vMetathesis
Find transposed consonants:
(C1=\c)↔(\{C2}).+(C2=\c)↔(\{C1})Vowel Epenthesis in Onset Cluster
Find cases where a vowel was inserted into a consonant cluster:
\s? (C1=\w:O ↔ \{C1}) (V= ∅ ↔ \w:N) ((C2=\w:O) ↔ \{C2}) .*Deleted Syllable
Find an entire syllable in the target with no corresponding content:
(σ)↔∅Regressive Place Assimilation
(C1= \c:O)
↔{ PV( {C2} ) }
(C2= \c:O)
↔(\{C2})
(?< {^ PV( {C1} ) } )This matches when an onset consonant C1 takes on the place and voicing features of a following onset consonant C2.
