ASPL Manual v 1.00
© 2024 by SetSphere.COM
7. 3f%\ aligns two sequences based on their elements difference
f%\ a1 a2 | a1 a2 a3 where a1 a2 | a1 a2 a3 are set variables
f%\`mtm~ a1 a2 | a1 a2 a3
f%\/mtm~ a1 a2 | a1 a2 a3
f%\
When specified by itself then the operation is performed on the object on top of the stack and the one that is one below it
seqop seqoid 23 notcommu ins:H_H_H text:alignment
Use the operator f%\ to align two set variables according to their elements difference and display their alignment on the terminal. It is assumed that each set variable has one group label, otherwise the first group (in the set variable) is explicitly implied. If you specify two set variables that have the same named group label, then you need to labinate the operator. If the operator f%\ is followed by three set variables then the alignment is performed on the datasets resulted by concatenating the third variable to the first and to the second. Hence this is similar to performing an alignment after joining with an "and" operation the first variable and the third variable, and the second variable and the third variable. You can change the sequence alignment algorithm selectively. The sequence alignment can be selected: the command sequencing lcs selects the algorithm for the longest common sequence, and the command sequencing ssa selects the algorithm for the sequence similarity analysis.
f%\ EXAMPLE1In this example we will compare the files in two directories by displaying their sequence alignment according to the difference of the checksums (of their elements). We will start ASPL by loading the WS1 workspace, then we will issue the command f%\ to display the alignment of the difference between the two set variables b1 and b2 such that their file checksums are different.
f%\ OPERATION1# aspl WS1
(start ASPL loading the sample workspace WS1 )
Notice that the tick `c= is reverted for the set difference operation hence is used here to select the unequal checksums
① aspl>
f%\`c= b1 b2
(align the difference between b1 and b2 such that their subgroup and element checksums are different)
f%\ EXAMPLE2In this example we will compare the files in two directories by displaying their sequence alignment according to the difference of the checksums (of their elements). We will start ASPL by loading the WS1 workspace, then we will issue the command f%\ to display the alignment of the difference between the two set variables b1 and b2 such that their file checksums are similar.
f%\ OPERATION2# aspl WS1
(start ASPL loading the sample workspace WS1 )
① aspl>
sequencing
(show what sequence alignment algorithm is used)
② aspl>
sequencing ssa
(set the sequence alignment algorithm to sequence similarity analysis)
③ aspl>
sequencing lcs
(set the sequence alignment algorithm to longest common sequence)
Notice that the tick `c~ is reverted for the set difference operation hence is used here to select the equal checksums
④ aspl>
f%\`c~ b1 b2
(align the difference between b1 and b2 such that their subgroup and element checksums are similar)
● Tickable Predicates for f%\
This f%\ is tickable with predicates that are shown in the following table:
a yellow note
f%\`_ aligns two sequences based on their elements difference f%\`c= aligns two sequences based on their elements difference such that they have the same checksum f%\`c~ aligns two sequences based on their elements difference such that they have different checksums f%\`c~~ aligns two sequences based on their elements difference such that they have all over different checksums f%\`h= aligns two sequences based on their elements difference such that they have the same entropy f%\`h~ aligns two sequences based on their elements difference such that they have different entropies f%\`h~~ aligns two sequences based on their elements difference such that they have all over different entropies f%\`mtm= aligns two sequences based on their elements difference such that they have the same make time f%\`mtm~ aligns two sequences based on their elements difference such that they have different make times f%\`mtm~~ aligns two sequences based on their elements difference such that they have all over different make times f%\`mtm< aligns two sequences based on their elements difference such that they have a prior make time f%\`mtm<= aligns two sequences based on their elements difference such that they have prior or same make time f%\`mtm> aligns two sequences based on their elements difference such that they have more recent make time f%\`mtm>= aligns two sequences based on their elements difference such that they have more recent or same make time f%\`ks= aligns two sequences based on their elements difference such that they have the same ksum f%\`ks~ aligns two sequences based on their elements difference such that they have different ksums f%\`ks~~ aligns two sequences based on their elements difference such that they have all over different ksums