Skip to content

Files

Latest commit

 

History

History
31 lines (22 loc) · 1.05 KB

hash_inclusion.rdoc

File metadata and controls

31 lines (22 loc) · 1.05 KB

Hash Inclusion

A hash is set-like in that it cannot have duplicate entries (or even duplicate keys). Hash inclusion can therefore based on the idea of subset and superset.

Two hashes may be tested for inclusion, based on comparisons of their entries.

An entry h0[k0] in one hash is equal to an entry h1[k1] in another hash if and only if the two keys are equal (k0 == k1) and their two values are equal (h0[k0] == h1[h1]).

A hash may be a subset or a superset of another hash:

  • Subset (included in or equal to another):

    • Hash h0 is a subset of hash h1 (see Hash#<=) if each entry in h0 is equal to an entry in h1.

    • Further, h0 is a proper subset of h1 (see Hash#<) if h1 is larger than h0.

  • Superset (including or equal to another):

    • Hash h0 is a superset of hash h1 (see Hash#>=) if each entry in h1 is equal to an entry in h0.

    • Further, h0 is a proper superset of h1 (see Hash#>) if h0 is larger than h1.