5 Library for handling comparator networks in general and sort networks in
12 The distribution includes a number of utility applications for handling sort
13 networks. Most tools operate in the typical UNIX fashion of reading from STDIN
14 and writing to STDOUT, so that it is able to chain tools together.
16 The distribution includes the following utility programs:
19 Reads a list of values from STDIN and applies a given comparator network to
20 the list. The resulting list of printed to STDOUT.
23 Create a bitonic merge network with a given number of left and right
24 inputs. The resulting network is printed to STDOUT.
27 Creates a bitonic mergesort network with a given number of inputs and
28 prints the network to STDOUT. The number of inputs must be a power of two.
31 Does a brute-force check whether a given comparator network is a sort
32 network. It tries all 2^n 0-1-combinations resulting in exponential running
33 time, so only small networks can be tested within a reasonable time.
36 Remove an input by assuming positive or negative infinity to be applied to
37 one input and "winning" or "losing" all comparisons.
40 Display information about a comparator network in human readable form.
43 Combine two sort networks using the odd-even-merge network.
46 Reads a sort network and prints a normalized version to STDOUT. A
47 normalized sort network is a network in which all comparators face the same
51 Create an odd-even merge network with a given number of left and right
52 inputs. The resulting network is printed to STDOUT.
55 Creates an odd-even mergesort network with a given number of inputs and
56 prints the network to STDOUT.
59 Create a pairwise sorting network based on the paper by Ian Parberry.
62 Prints a so-called "shmoo chart" of a comparator network to STDOUT. The
63 running time of this tool is exponential, roughly O(m * 2^n) where m is the
64 number of stages and n is the number of inputs.
67 Prints an ASCII version of a sort network to STDOUT.
70 Prints the TikZ / TeX sources of a graphic representation of a comparator
73 Experimental / research applications:
87 The libsortnetwork library is licensed under the GNU Lesser General Public
88 License, version 2.1 or later (LGPLv2.1+).
90 Other utility programs included in this distribution, for example
91 "sn-normalize", are licensed under the GNU General Public License, version 2
92 (GPLv2). The exact terms of this license can be found in the file "COPYING" in
93 the top source directory.
99 libsortnetwork has been written by Florian "octo" Forster.
100 You can reach Florian at <ff at octo.it>.