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_expr

Phone-to-Phone Alignment

Match b in the target aligned with p in the actual:

b↔p

Phone-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):

∅↔\c

Group-to-Expression Alignment

Align an entire group with an expression in the other transcript:

(\c\v)↔\v

This 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↔∅ \v

This finds a deleted b followed by a vowel.

Detecting Insertions

Find gaps in the target where the actual has a phone:

∅↔\c

This 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↔∅ \v

Epenthesis

Find an inserted consonant before a vowel:

∅↔\c \v

Metathesis

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.