PNUL: Positive & Negative Utility Lists
- Positive and Negative Utility Lists (PNUL) are vertical list structures that represent transaction-level utility by distinctly storing positive utility, negative utility, and a positive-only remaining utility term.
- PNUL enables exact utility computation and safe upper-bound pruning by isolating negative contributions from the remaining positive utility used in candidate extension.
- The construction and join mechanics of PNUL, integral to the TPU algorithm, allow efficient candidate generation and effective pruning in mixed-sign high-utility pattern mining.
Positive and Negative Utility Lists (PNUL) are a vertical list structure for high-utility pattern mining in databases that may contain both positive and negative utility values. In the formulation introduced for the TPU algorithm, PNUL stores transaction-level information for an itemset while separating its positive contribution, negative contribution, and a positive-only remaining-utility term. This separation is the central design choice that permits exact utility computation together with safe upper-bound pruning in top- periodic high-utility pattern mining, where ordinary utility-list pruning is unsafe or too weak when negative utilities are present (Zhou et al., 19 Sep 2025).
1. Definition and representational role
In the relevant mining literature, PNUL denotes the Positive and Negative Utility List. The paper defining TPU states that PNUL is the vertical list structure used to represent utilities of itemsets when the database may contain both positive and negative utility values, and that TPU is designed for extracting top- periodic and high-utility patterns “that may or may not include negative utility values” (Zhou et al., 19 Sep 2025). In the same source, the formal definition appears under the name PNU-list, while the surrounding discussion uses PNUL; these are the same structure up to naming.
Formally, for an itemset in , the PNU-list of , denoted , consists of the itemset itself and a list of all transactions containing . Each list entry is a 4-tuple
where is the transaction identifier, 0 is the positive utility of 1 in that transaction, 2 is the negative utility of 3 in that transaction, and 4 is the sum of the utilities of all positive items following 5 in that transaction according to the global order 6 (Zhou et al., 19 Sep 2025).
| Field | Meaning |
|---|---|
| 7 | identifier of a transaction containing 8 |
| 9 | positive utility of 0 in that transaction |
| 1 | negative utility of 2 in that transaction |
| 3 | remaining utility from positive suffix items after 4 |
The defining motivation is that ordinary utility-list formulations do not handle mixed-sign utilities well. TPU therefore adopts a list that separates positive and negative accumulated utility and retains a remaining-utility term based only on positive suffix items. This supports exact utility evaluation while preserving a valid upper bound for extension pruning. The related-work discussion in the TPU paper directly attributes PNUL to FHN and states that it was designed to mine high-utility itemsets with negative items efficiently; TPU reuses that style of list rather than a standard utility list (Zhou et al., 19 Sep 2025).
2. Mathematical semantics
The underlying utility model begins at the item level. For an item 5 in transaction 6,
7
For an itemset 8 in transaction 9, the positive and negative parts are defined separately: 0
1
At database level, total utility is
2
The TPU paper also gives the database-level formulas
3
with 4 (Zhou et al., 19 Sep 2025).
The remaining-utility component is defined transaction by transaction as
5
Thus 6 is computed only from positive utilities of suffix items that appear after all items of 7 in the total order 8. That order is defined so that negative items come before positive items, and within the same sign class items are sorted by ascending RTWU. The restriction of 9 to positive suffix utility is essential: including negative suffix utility would not preserve the same useful upper-bound property, and mixing positive and negative contributions would make the standard remaining-utility bound invalid or too loose in the negative-utility setting (Zhou et al., 19 Sep 2025).
A cautious interpretation directly implied by the structure is that database-level aggregates can be read from the PNUL of 0 by summing fields over entries, namely 1 from all 2, 3 from all 4, and 5 from all 6. The paper does not explicitly write these summation-over-list equations, but it states that this is the standard interpretation of utility-list fields and that the reading is implied by the definitions and pruning properties (Zhou et al., 19 Sep 2025).
3. Construction and join mechanics
Within TPU, PNUL construction begins after an initial preprocessing phase. The algorithm first scans the database to compute utility and periodic information for single items, applies PIU to raise the threshold, keeps promising items in 7, orders them by 8, and then scans 9 again to construct the PNUL and PEUCS (Zhou et al., 19 Sep 2025).
For 1-itemsets, the paper does not provide line-by-line pseudocode, but the implied construction is explicit enough. Each reordered transaction contributes one tuple 0 to every surviving item it contains. For a singleton 1, 2 is 3 if 4 and 0 otherwise; 5 is 6 if 7 and 0 otherwise; 8 is the sum of positive utilities of items appearing after 9 in the reordered transaction. The source labels this as an interpretation induced by the formal definition rather than a separately stated theorem (Zhou et al., 19 Sep 2025).
For larger itemsets, PNULs are built by the Construct procedure. Let 0 be a prefix, with 1, 2, and 3. The output is 4. Construction proceeds by matching entries with the same 5 between 6 and 7. When 8, meaning that 1-itemsets are joined to form a 2-itemset, the new tuple is
9
When 0, the prefix contribution is subtracted once to avoid double counting: 1 The use of 2 as the new remaining utility reflects that after appending 3, the suffix relevant for future extensions is exactly the suffix after 4 (Zhou et al., 19 Sep 2025).
The join phase also embeds pruning. The procedure initializes
5
If a tuple 6 has no matching tuple in 7, it updates
8
and decrements support of 9. If afterward
0
the procedure returns null. The first condition is utility look-ahead pruning based on 1; the second is support-based pruning linked to periodicity feasibility. The TPU paper mentions supportPruning in pseudocode but does not formally define its exact formula there. It does, however, state that periodic constraints induce a support range, such as 2 in the running example, so the support test is explicitly period-related even when the exact expression is implicit (Zhou et al., 19 Sep 2025).
4. Pruning logic and interaction with periodicity
The core PNUL-based upper bound is the RU pruning property: 3 then neither 4 nor its extensions are high-utility itemsets. Because 5 contains only positive suffix utility, it safely upper-bounds the utility that can still be gained by extending 6, even when some items have negative utility. This is the main correctness rationale for separating 7 and 8 (Zhou et al., 19 Sep 2025).
The TPU paper states the exact-utility identity
9
so PNUL serves a dual function: it provides exact utility through 0 and a pruning upper bound through 1. The proof intuition supplied in the paper is that for 2,
3
Negative additions cannot increase utility, so excluding them from the upper bound is safe and useful rather than conservative in the wrong direction (Zhou et al., 19 Sep 2025).
Periodicity is coupled to PNUL through transaction identifiers rather than through extra per-entry fields. The periodic definitions used by TPU are
4
with 5 and the last boundary equal to the database size, together with
6
and
7
PNUL provides the ordered 8 sequence from which these quantities can be computed or updated (Zhou et al., 19 Sep 2025).
For 2-itemsets, TPU stores periodicity directly in PEUCS, where each entry records 9, Utility, 00, 01, and support. For larger itemsets, periodic information is maintained during PNUL construction by the auxiliary procedure getPeriod and related updates on the sequence of retained tids. Thus period-related metadata is maintained alongside the list, not inside each PNUL tuple. A common misconception is that PNUL entries themselves include period fields; in TPU they do not. The entry schema remains exactly 02, while periodicity is derived externally from the tids or stored in PEUCS for pairs (Zhou et al., 19 Sep 2025).
The same paper also redefines transaction utility and RTWU to remain valid in the presence of negative utilities: 03
04
Because RTU contains only positive utility, RTWU remains an upper bound even with negative items. This feeds initial filtering and co-occurrence pruning before PNUL joins are attempted (Zhou et al., 19 Sep 2025).
5. Use within TPU and worked examples
In TPU’s search phase, PNUL is the core representation for recursive pattern extension. For each candidate 05, TPU checks whether it is itself a periodic high-utility itemset by combining exact utility 06 with periodicity constraints 07, 08, and 09. Before generating descendants, it applies the PNUL-based upper bound
10
together with 11 and 12. Only itemsets passing these tests are extended. Candidate generation is then a PNUL join, while PEUCS reduces unnecessary joins by supplying pairwise RTWU, utility, and periodicity information (Zhou et al., 19 Sep 2025).
PNUL also interacts indirectly with TPU’s threshold-raising strategies. PIU is computed during the first scan from single-item utilities satisfying periodic constraints. PCUD is derived from PEUCS or PCUDM values for 2-itemsets that satisfy periodicity and RTWU pruning. PRU uses utilities of all 1-itemsets and 2-itemsets currently known to satisfy periodicity, stored in a priority queue, to further raise 13. The TPU paper explicitly states that by using this information one can “swiftly determine whether to construct the UL of an itemset, thereby avoiding numerous UL join operations.” By the reported experiments, these threshold-raising strategies reduced runtime by approximately 5\% on the datasets used in the experiments, by up to 50\% on the mushroom_negative and kosarak_negative datasets, and by up to 10\% on the chess_negative dataset; memory consumption was reduced by about 2\%, with the largest reduction of about 30\% on mushroom_negative (Zhou et al., 19 Sep 2025).
The paper gives one explicit PNUL example for the itemset 14: 15 using the global order
16
In 17, the reordered transaction is 18, so for 19 the positive utility is 20, the negative utility is 21, and the remaining utility is 12 from suffix item 22. In 23, 24, 25, and 26; in 27, there is no suffix positive item after 28, so 29. Summing the entries yields
30
as implied by PNUL semantics (Zhou et al., 19 Sep 2025).
The same source reconstructs a singleton example for the negative item 31. Across transactions 32, each PNUL entry for 33 has 34, 35, and 36 equal to the positive suffix utility after 37. The resulting totals are 38, 39, 40, and 41. This illustrates a characteristic PNUL phenomenon: an itemset can have low or negative exact utility but still possess substantial extension potential because its positive suffix utility remains large. A further reconstructed example joins the PNULs of 42 and 43 to obtain 44, with
45
In the running example, the threshold after PIU, PCUD, and PRU reaches 46, so 47 is not itself a top-48 PHUI, but its upper bound 49 prevents immediate RU pruning; by contrast, 50, 51, and 52 become the final top-53 periodic high-utility patterns (Zhou et al., 19 Sep 2025).
6. Relation to adjacent structures and terminological ambiguity
PNUL belongs to the utility-list family but differs from both ordinary utility lists and compressed positive-utility variants. The TPU paper notes that its recursive pseudocode sometimes uses the generic notation “UL,” but in context that UL is a PNUL when negative values are allowed. It also distinguishes PNUL from the M-list of PHMN, another structure for periodic high-utility mining with negative values. In TPU, PNUL is therefore best understood as a positive/negative-aware utility list, while PEUCS is the companion pairwise summary used for pre-join pruning and threshold raising (Zhou et al., 19 Sep 2025).
A useful background point comes from the PUN-list structure introduced for MIP. PUN-list is described as “a highly compressed format of utility-list,” stores exact utility information, upper-bound information via anterior utility, and auxiliary data for joins, and supports direct HUIM by joining node-based summaries rather than transaction-based entries. However, that work is explicitly confined to the standard positive-utility setting and “does not mention ‘Positive and Negative Utility Lists’ (PNUL), nor negative profits/utilities.” Its relevance to PNUL is therefore methodological rather than direct: it provides a precedent for compression, join design, and branch-and-bound organization, but not a correctness treatment for mixed-sign utilities (Deng et al., 2015).
There is also a distinct and unrelated use of positive/negative lists in qualitative decision theory. In that literature, a decision is represented by the sets 54 and 55 of arguments in favor of and against the decision, and comparison rules such as BiPoss, Discri, BiLexi, and Lexi are defined on ordinal importance levels. This is not the same object as the PNUL structure used in utility-list mining; the former concerns qualitative comparison of pros and cons, whereas the latter is a transaction-indexed data structure for exact utility computation and pruning in high-utility pattern mining (Dubois et al., 2014).
Taken together, these distinctions clarify the place of PNUL in the broader landscape. In high-utility mining, PNUL is not merely a storage convention. It is the structure that makes it possible to separate exact positive and negative utility contributions while preserving a positive-only upper bound for future extensions. That combination is the mathematical basis for TPU’s one-phase, list-based mining of top-56 periodic high-utility patterns in databases containing negative utilities (Zhou et al., 19 Sep 2025).