1. A computer-implemented method for matching of contracts using a fixed-length complex predicate representation comprising: storing, in memory, an impression opportunity profile in the form of a Boolean expression; converting the impression opportunity profile into a list comprising at least one impression conjunct; retrieving, at a server, a set of candidate contracts that match the at least one impression conjunct; constructing, within a computer memory, a contract tree representation of at least one contract from among the set of candidate contracts, the contract tree comprising alternating AND/OR levels of a plurality of nodes, the plurality of nodes comprising at least one contract tree leaf node predicate, the contract tree leaf node predicates having a label representing a projection onto a discrete set of ordered symbols; and marking, for producing at least one marked contract tree leaf node predicate, the at least one contract tree leaf node predicate based on comparing the at least one contract tree leaf node predicate to the at least one impression conjunct.