16. A computer program product tangibly embodied on a non-transitory computer readable medium for pricing a sequence of transportation units, the computer program product comprising instructions for causing a computing device to: receive a set of sellable-units, each sellable unit comprising one or more flight segments and at least one fare associated with the one or more flight segments; expand the set of sellable units into components; identify the components that include a crossed combination of priceable units such that a first flight associated with a first priceable unit departs prior to a first flight associated with a second priceable unit, and the first flight associated with the second priceable unit departs prior to completion of a last flight associated with the first priceable unit; translate the components of the expanded set of sellable-units that do not include a crossed combination of priceable units into a context-free grammar to represent combinations of the sellable-units; produce a parse tree that corresponds to combinations of sellable-units; parse the parse tree to enumerate sequences of flight segments and a fare used with the flight segments to identify a set of sellable units; and combine one or more of the enumerated sequences of flight segments and fares according to the parsing to produce one or more tickets.
16. A computer program product tangibly embodied on a non-transitory computer readable medium for pricing a sequence of transportation units, the computer program product comprising instructions for causing a computing device to: receive a set of sellable-units, each sellable unit comprising one or more flight segments and at least one fare associated with the one or more flight segments; expand the set of sellable units into components; identify the components that include a crossed combination of priceable units such that a first flight associated with a first priceable unit departs prior to a first flight associated with a second priceable unit, and the first flight associated with the second priceable unit departs prior to completion of a last flight associated with the first priceable unit; translate the components of the expanded set of sellable-units that do not include a crossed combination of priceable units into a context-free grammar to represent combinations of the sellable-units; produce a parse tree that corresponds to combinations of sellable-units; parse the parse tree to enumerate sequences of flight segments and a fare used with the flight segments to identify a set of sellable units; and combine one or more of the enumerated sequences of flight segments and fares according to the parsing to produce one or more tickets. 22. The computer program product of claim 16 wherein the sellable-units contain multiple fare-components, and computer program product comprises instructions to: augment the grammar with a set of sellable units that represents a set of crossed priceable units whose first fare-component appears within an expansion of a non-terminal node of the grammar; and augment the grammar with a set of sellable units that represents the set of crossed priceable units whose second fare-component appears within an expansion of a non-terminal node of the grammar.