The Boom Hierarchy 93

Embed Size (px)

Citation preview

  • 8/3/2019 The Boom Hierarchy 93

    1/8

    T h e B o o m H i e r a r c h y

    A l e x a n d e r B u n k e n b u r g

    C o m p u t i n g S c i e n c e D e p a r t m e n t , U n i v e r s i t y o f G l a s g o w ,

    G l a s g o w , S c o t l a n d

    A b s t r a c t

    T h e B o o m H i e r a r c h y i s t h e f a m i l y o f d a t a s t r u c t u r e s t r e e , l i s t , b a g , s e t

    B y c o m b i n i n g t h e i r p r o p e r t i e s i n o t h e r w a y s , m o r e d a t a s t r u c t u r e s c a n

    b e m a d e , l i k e m o b i l e s . T h e p a p e r d e n e s t h e d a t a s t r u c t u r e s o f t h i s

    e x t e n d e d B o o m H i e r a r c h y a n d s h o w s h o w t h e f u n c t i o n s r e d u c e , m a p , a n d

    l t e r a r e a p p l i e d t o t h e m .

    1 I n t r o d u c t i o n

    T h e B o o m H i e r a r c h y i s t h e f a m i l y o f d a t a s t r u c t u r e s t r e e , l i s t , b a g , s e t , t o b e

    u s e d w i t h t h e h i g h e r - o r d e r S q u i g g o l f u n c t i o n s r e d u c e , m a p , l t e r

    E x a m p l e

    T h e t e r m t h a t l t e r s t h e o d d n u m b e r s f r o m t h e l i s t 1 . . 1 0 ] , a n d a d d s u p t h e i r

    s q u a r e s i s

    + = s q r

    o d d / 1 1 0

    ( R e d u c e = , m a p

    , a n d l t e r / a r e d e n e d f u r t h e r d o w n . )

    e n d o f e x a m p l e

    I n t h i s p a p e r t h e d a t a s t r u c t u r e s a r e p r e s e n t e d a s f r e e a l g e b r a s . N e w d a t a

    s t r u c t u r e s i n t h e f a m i l y ( e . g . m o b i l e s ) s p r i n g f r o m a l g e b r a s w i t h n e w c o m b i -

    n a t i o n s o f l a w s . T h e r e l a t i o n s b e t w e e n t h e d a t a s t r u c t u r e s a r e e x p l a i n e d a n d

    s o m e s a m p l e d a t a s t r u c t u r e s . N o c a t e g o r y t h e o r y r e q u i r e d !

    2 T h e B o o m h i e r a r c h y

    T h e h i e r a r c h y o f d a t a s t r u c t u r e s t h a t M e e 8 6 ] a t t r i b u t e s t o H . J . B o o m c o m -

    p r i s e s f o u r d a t a s t r u c t u r e s : t r e e , l i s t , b a g , a n d s e t . I t i s a t t i n g c o i n c i d e n c e t h a t

    D u t c h \ b o o m " m e a n s \ t r e e " , a n d t r e e s a r e i n t h e h i e r a r c h y . E n g l i s h \ b o o m "

    m e a n i n g \ p o l e " r e m i n d s o f l i s t s i n t h e s a m e w a y .

    A d a t a s t r u c t u r e v a l u e i s

    e i t h e r ] , t h e e m p t y v a l u e c o n t a i n i n g n o e l e m e n t s ,

    o r a ] , t h e s i n g l e t o n c o n t a i n i n g o n e e l e m e n t ,

    o r l + + r , t h e j o i n o f t w o v a l u e s .

    S u p p o r t e d b y a p o s t g r a d u a t e r e s e a r c h s t u d e n t s h i p f r o m t h e S c i e n c e a n d E n g i n e e r i n g

    R e s e a r c h C o u n c i l

    1

  • 8/3/2019 The Boom Hierarchy 93

    2/8

    F o r n o n e m p t y d a t a s t r u c t u r e s ] i s e x c l u d e d . T h i s n o t a t i o n i s u s e d f o r a l l

    d a t a s t r u c t u r e s , n o t j u s t l i s t s . H o p e f u l l y c u t t i n g a w a y s y n t a c t i c d i e r e n c e s w i l l

    e x p o s e t h e s e m a n t i c s i m i l a r i t i e s a n d d i e r e n c e s b e t w e e n d a t a s t r u c t u r e s m o r e

    c l e a r l y .

    E a c h d a t a s t r u c t u r e i s t h e f r e e a l g e b r a o f i t s b i n a r y o p e r a t i o n + + . T h e

    a l g e b r a s ( a n d t h e r e f o r e t h e d a t a s t r u c t u r e s ) d i e r i n t h e l a w s t h e y s a t i s f y .

    M o r e l a w s t o a n a l g e b r a m e a n l e s s s t r u c t u r a l i n f o r m a t i o n i n t h e d a t a s t r u c t u r e .

    T h e f o u r l a w s o f a b i n a r y o p e r a t i o n t h a t w e ' l l c o n s i d e r a r e :

    a 1

    = a = 1

    a U N I T

    ( a b ) c = a ( b c ) A S S O C

    a b = b a C O M M

    a a = a I D E M

    L e t ' s t a l k a b o u t t h e s e p r o p e r t i e s i n s h o r t h a n d . A b i n a r y o p e r a t i o n h a s

    p r o p e r t i e s a

    1

    a

    2

    a

    3

    a

    4

    m e a n s t h a t i f a

    i

    i s 1 t h e n i t s a t i s e s t h e i ' t h p r o p e r t y , a n d

    i f a

    i

    i s 0 , t h e n i t d o e s n ' t . A d d i t i o n f o r i n s t a n c e h a s p r o p e r t i e s 1 1 1 0 ; i t h a s a

    u n i t , i s a s s o c i a t i v e a n d c o m m u t a t i v e , b u t n o t i d e m p o t e n t . T h e j o i n o p e r a t i o n s

    o f t h e d a t a s t r u c t u r e s t r e e , l i s t , b a g , s e t h a v e p r o p e r t i e s 1 0 0 0 , 1 1 0 0 , 1 1 1 0 , a n d

    1 1 1 1 .

    E a c h s e t o f p r o p e r t i e s s p e c i e s a v a r i e t y o f a l g e b r a s . T h e p r o p e r t i e s 1 1 0 0

    a r e t h e v a r i e t y m o n o i d f o r e x a m p l e .

    A d d i n g a l a w t o a n a l g e b r a c a n b e t h o u g h t o f a s p a r t i t i o n i n g t h e c a r r i e r o f

    t h e a l g e b r a i n t o e q u i v a l e n c e c l a s s e s i n d u c e d b y t h a t l a w , a n d r e g a r d i n g e a c h

    c l a s s a s o n e e l e m e n t . P a r t i t i o n i n g a l l l i s t s b y c o m m u t a t i v i t y p u t s t h e l i s t s

    1 2 2 1 ] i n t o t h e s a m e c l a s s , t h e c l a s s r e p r e s e n t i n g t h e b a g 1 2 ] . E a c h c l a s s

    w i l l i n g e n e r a l h a v e m a n y e l e m e n t s , t h e r e f o r e m a p p i n g a n e l e m e n t t o i t s c l a s s

    i s a f u n c t i o n , b u t m a p p i n g a c l a s s t o o n e o f i t s e l e m e n t s i n v o l v e s t h e c h o i c e o f

    w h i c h e l e m e n t t o t a k e . L e t ' s c a l l d a t a s t r u c t u r e A h i g h e r t h a n d a t a s t r u c t u r e B

    i f A ' s l a w s a r e a s u b s e t o f B ' s l a w s . T h e s h o r t h a n d m a k e s t h i s r e l a t i o n o b v i o u s :

    T h e d a t a s t r u c t u r e w i t h v a r i e t y a

    1

    a

    2

    a

    3

    a

    4

    i s h i g h e r t h a n t h e o n e w i t h v a r i e t y

    b

    1

    b

    2

    b

    3

    b

    4

    i f e a c h a

    i

    b

    i

    . D o w n w a r d m a p p i n g s ( f r o m l i s t s t o b a g s f o r i n s t a n c e )

    a r e e a s y , a n d c a n s a f e l y b e i m p l i c i t , b u t u p w a r d m a p p i n g s ( f r o m s e t s t o b a g s

    f o r i n s t a n c e ) i n v o l v e a c h o i c e , a n d t h e r e f o r e h a v e t o b e w r i t t e n .

    F i g u r e 1 g i v e s e x a m p l e s h o w d i e r e n t v a l u e s o f a h i g h e r d a t a s t r u c t u r e a r e

    t r a n s l a t e d d o w n w a r d s t o t h e s a m e v a l u e i n a l o w e r d a t a s t r u c t u r e . T w o u s e f u l

    c h o i c e s f o r u p w a r d t r a n s l a t i o n s a r e t h e r e t o o : s e t T o B a g t a k e s a s e t t o t h e b a g

    t h a t c o n t a i n s e a c h e l e m e n t o f t h e s e t o n c e , a n d s o r t t a k e s a a b a g t o t h e l i s t

    w i t h t h e s a m e e l e m e n t s i n o r d e r ( s o r t o b v i o u s l y o n l y m a k e s s e n s e i f t h e t y p e o f

    t h e e l e m e n t s i s o r d e r e d ) .

    F i g u r e 2 i s a p i c t u r e o f t h e B o o m h i e r a r c h y d a t a s t r u c t u r e s . T h e r e ' s a

    f r e e a l g e b r a ( a n d t h e r e f o r e a d a t a s t r u c t u r e ) f o r a l l 1 6 p o s s i b l e c o m b i n a t i o n s

    o f t h e a b o v e f o u r l a w s . E a c h d a t a s t r u c t u r e i s i d e n t i e d b y t h e p r o p e r t i e s o f

    i t s j o i n - o p e r a t i o n , a n d b y n a m e . T h e a b b r e v i a t i o n s \ n . " a n d \ i d . " s t a n d f o r

    \ n o n e m p t y " a n d \ i d e m p o t e n t " . T h e o r i g i n a l B o o m h i e r a r c h y d a t a s t r u c t u r e s

    p l u s m o b i l e s a r e t h e d i a m o n d w i t h t a i l o n t h e l e f t . T h e i r n o n e m p t y v e r s i o n s

    f o r m a d i a m o n d w i t h t a i l i n t h e m i d d l e . O n t h e r i g h t t h e i d e m p o t e n t v e r s i o n s

    r e p e a t t h e t w o d i a m o n d s . T h e i r t a i l s i d e m p o t e n t b a g s a r e j u s t s e t s . T h e i d e m -

    p o t e n t s t r u c t u r e s ( 1 i n f o u r t h p o s i t i o n ) e x i s t ; b u t s e t s s e e m t h e o n l y u s e f u l o n e s .

    H o w e v e r g u a r a n t e e d n o n - e m p t y s t r u c t u r e s ( 0 i n r s t p o s i t i o n ) a r e u s e f u l . I f a l l

    e d g e s o f t h e h i g h e r - t h a n r e l a t i o n a r e d r a w n , t h e p i c t u r e b e c o m e s a 4 d - c u b e .

  • 8/3/2019 The Boom Hierarchy 93

    3/8

    Trees[1] [3]

    [2] [3] [2][1]

    Lists [3, 2, 1] [1, 2, 3]

    Bags [3, 1, 2][1, 1, 2, 3]

    Set[1, 2, 3]

    setToBag

    sort

    F i g u r e 1 : S o m e t r a n s l a t i o n s

    0111nonempty sets

    0000nonempty trees

    1010mobiles

    1100

    lists

    1110bags

    1111sets

    1000trees

    0001n. id. trees

    0101

    n. id. lists

    0011

    n. id. mob.

    n. id. bags

    1001

    id. trees

    1101id. lists

    1011id. mob.

    id. bags

    0110n. bags

    0100

    n. lists

    0010

    n. mobiles

    F i g u r e 2 : T h e B o o m h i e r a r c h y

  • 8/3/2019 The Boom Hierarchy 93

    4/8

    3 R e d u c e , m a p , l t e r

    T h e r e a r e a c o u p l e o f u s e f u l f u n c t i o n s t h a t c a n b e a p p l i e d t o t h e B o o m h i e r a r c h y

    d a t a s t r u c t u r e s . T h e f u n c t i o n s a r e r e d u c e = m a p

    , a n d l t e r / . R e d u c e i s a l s o

    c a l l e d \ f o l d " . F i l t e r r e m o v e s e l e m e n t s f r o m a s t r u c t u r e , m a p a p p l i e s a f u n c t i o n

    t o a l l e l e m e n t s o f a s t r u c t u r e , a n d r e d u c e c o m b i n e s t h e e l e m e n t s i n a s t r u c t u r e .

    T h e d e n i t i o n o f r e d u c e i s :

    = ] = 1

    = a = a

    = ( x + + y ) = = x = y

    T h e u n i t o f o p e r a t i o n i s d e n o t e d 1

    . T h e f u n c t i o n = i s a h o m o m o r p h i s m

    f r o m + + t o i f s a t i s e s t h e l a w s o f + + a n d n o t w e l l - d e n e d o t h e r w i s e . T h a t

    i s

    i f + + h a s a u n i t , t h e n m u s t h a v e a u n i t ,

    i f + + i s a s s o c i a t i v e , t h e n m u s t b e a s s o c i a t i v e ,

    i f + + i s c o m m u t a t i v e , t h e n m u s t b e c o m m u t a t i v e ,

    i f + + i s i d e m p o t e n t , t h e n m u s t b e i d e m p o t e n t .

    L e t ' s a b b r e v i a t e \ h o m o m o r p h i s m f r o m + + t o " b y \ + + ! h o m o m o r p h i s m " .

    T h e d e n i t i o n o f m a p i s :

    f

    ] = ]

    f

    a = f a

    f

    ( x + + y ) = f

    x + + f

    y

    T h e f u n c t i o n f

    i s a + + ! + + h o m o m o r p h i s m . M a p a n d r e d u c e a r e c r u c i a l

    i n d e n i n g h o m o m o r p h i s m s f r o m d a t a s t r u c t u r e s . I n d e e d a n y h o m o m o r p h i s m

    f r o m a f r e e a l g e b r a ( a d a t a s t r u c t u r e ) c a n b e d e n e d a s a c o m p o s i t i o n o f a

    m a p a n d a r e d u c e . T h i s i s c a l l e d t h e \ h o m o m o r p h i s m l e m m a " B i r 8 6 ] , o r

    t h e \ U n i v e r s a l p r o p e r t y o f f r e e a l g e b r a s " . A g i v e n + + ! h o m o m o r p h i s m h

    s a t i s f y i n g :

    h ] = 1

    h a = f a

    h ( x + + y ) = h x h y

    c a n b e w r i t t e n a s h = = f

    . R e d u c e c a p t u r e s t h e w a y t h a t ] a n d + + a r e

    r e p l a c e d b y 1

    a n d , a n d m a p c a p t u r e s h o w h a c t s o n s i n g l e t o n s .

    F i l t e r / i s d e n e d o n a n y p o s s i b l y - e m p t y d a t a s t r u c t u r e s . I t s d e n i t i o n i s :

    p / ] = ]

    p / a = a f p a e l s e

    p / ( x + + y ) = p / x + + p / y :

    T h e f u n c t i o n p / i s a n + + ! + + h o m o m o r p h i s m . F i l t e r i s c o n v e n i e n t , b u t c a n

    b e e l i m i n a t e d u s i n g m a p ( s e e \ t r a d i n g " l a t e r ) .

  • 8/3/2019 The Boom Hierarchy 93

    5/8

    4 S o m e d a t a s t r u c t u r e s

    M a n y u s e f u l f u n c t i o n s f r o m d a t a s t r u c t u r e s a r e d e n e d a s h o m o m o r p h i s m s f r o m

    t h e j o i n f u n c t i o n o f t h e d a t a s t r u c t u r e t o a n o t h e r b i n a r y f u n c t i o n . T h e r e f o r e i n

    t h e f o l l o w i n g m o s t d a t a s t r u c t u r e s a r e p r e s e n t e d t o g e t h e r w i t h b i n a r y f u n c t i o n s

    t h a t h a v e t h e s a m e p r o p e r t i e s a s t h e j o i n o f t h e d a t a s t r u c t u r e , a n d h o m o m o r -

    p h i s m s t o t h e m . W e ' l l l o o k a t t h e f o u r u s u a l o n e s t r e e ; l i s t ; b a g s ; s e t , a n d a t a

    c o u p l e o f s t r a n g e r o n e s .

    4 . 1 1 0 0 0 T r e e s

    A t r e e i s e i t h e r t h e e m p t y t r e e ] c o n t a i n i n g n o e l e m e n t s , o r a s i n g l e t o n t r e e

    a ] c o n t a i n i n g o n e e l e m e n t , o r a j o i n o f t w o t r e e s r + + l . T r e e - j o i n h a s u n i t ] ,

    b u t i t i s n o t a s s o c i a t i v e , n o t c o m m u t a t i v e , a n d n o t i d e m p o t e n t . T h e s e t r e e s

    a r e b i n a r y t r e e s w i t h e l e m e n t s i n t h e i r l e a v e s .

    4 . 2 1 1 0 0 L i s t s

    T h e o r g a n i s a t i o n a l i n f o r m a t i o n t h a t i s l o s t i n g o i n g f r o m t r e e s t o l i s t s i s t h e

    s h a p e o f t h e t r e e . T h e l a w t h a t i s a d d e d t o t h e a l g e b r a i s a s s o c i a t i v i t y o f + + .

    A n o t h e r o p e r a t i o n w i t h p r o p e r t i e s 1 1 0 0 i s s q u a r e m a t r i x m u l t i p l i c a t i o n o f

    n n - m a t r i c e s o v e r c o m p l e x n u m b e r s , w h e r e n i s x e d . T h e r e i s a s q u a r e u n i t

    m a t r i x I

    n

    , a n d m a t r i x m u l t i p l i c a t i o n i s a s s o c i a t i v e , b u t n o t c o m m u t a t i v e o r

    i d e m p o t e n t . S o d e n e d o v e r l i s t s o f m a t r i c e s b y :

    = I

    n

    A = A

    ( l + + r ) = : l m u l t r

    i s a h o m o m o r p h i s m f r o m l i s t s t o m a t r i x m u l t i p l i c a t i o n , b u t n o t f r o m a n y l o w e r

    d a t a s t r u c t u r e . U s i n g m a p a n d r e d u c e w e c a n w r i t e = m u l t = d

    , w h i c h i s

    j u s t m u l t = . C o m p o s i t i o n o f n - s p a c e t r a n s f o r m a t i o n s l i k e t r a n s l a t i o n , s c a l i n g ,

    a n d r o t a t i o n h a s p r o p e r t i e s 1 1 0 0 t o o ( a n d n o t s u r p r i s i n g l y c a n b e m o d e l l e d b y

    s q u a r e m a t r i x m u l t i p l i c a t i o n ) .

    F o r l i s t s o f c h a r a c t e r s t h e r e i s a m o r e c o n v e n i e n t n o t a t i o n : \ " i s t h e e m p t y

    l i s t , a n d \ a b c " i s t h e l i s t ` a ' , ` b ' , ` c ' ] .

    4 . 3 1 1 1 0 B a g s

    B a g s a r e l i k e l i s t s t h a t h a v e l o s t t h e i r o r d e r , a n d l i k e m o b i l e s t h a t h a v e l o s t

    t h e i r s h a p e . B a g j o i n i s c o m m u t a t i v e , b u t n o t i d e m p o t e n t . A b a g i s n o t

    o r d e r e d , b u t c a n c o n t a i n a n e l e m e n t o n c e , t w i c e , o r a n y n a t u r a l n u m b e r o f

    t i m e s . T h e n u m b e r o f t i m e s a n e l e m e n t i s c o n t a i n e d i n a b a g i s c a l l e d t h e

    e l e m e n t ' s f r e q u e n c y i n t h e b a g .

    T h e c l a s s i c f u n c t i o n w i t h p r o p e r t i e s 1 1 1 0 i s a d d i t i o n . I t i s u s e d t o d e n e

    t h r e e i m p o r t a n t h o m o m o r p h i s m s f r o m b a g s , n a m e l y s i z e ; , a n d f r e q : x . T h e y

    r e t u r n t h e n u m b e r o f e l e m e n t s i n a b a g , t h e i r s u m , a n d t h e f r e q u e n c y o f a g i v e n

    x i n a b a g . T h e i r d e n i t i o n s a r e :

    s i z e = + = ( 1 )

  • 8/3/2019 The Boom Hierarchy 93

    6/8

    = + =

    f r e q : x = + = f

    w h e r e f a = 1 f a = x e l s e 0

    O b v i o u s l y o n l y a p p l i e s t o b a g s o f n u m b e r s . T h e f u n c t i o n i s c a l l e d \ r s t "

    a n d d e n e d b y a b = a , a n d ( 1 ) a b o v e i s t h e f u n c t i o n ( x 1 x ) . T h e

    f u n c t i o n \ s e c o n d " i s w r i t t e n

    4 . 4 1 1 1 1 S e t s

    S e t s a r e l i k e b a g s , b u t t h e y h a v e l o s t t h e n o t i o n o f c o n t a i n i n g a n e l e m e n t a

    p a r t i c u l a r n u m b e r o f t i m e s ( t h e e l e m e n t ' s f r e q u e n c y ) . T h e l a w t h a t i s a d d e d

    t o t h e a l g e b r a i n g o i n g f r o m b a g s t o s e t s i s i d e m p o t e n c y o f j o i n + + .

    B i n a r y o p e r a t i o n s w i t h p r o p e r t i e s 1 1 1 1 a r e l o g i c a l d i s j u n c t i o n a n d c o n j u n c -

    t i o n , a n d m a x m n ( i f t h e y h a v e u n i t s ) . D i s j u n c t i o n i s u s e d t o d e n e t h r e e h o -

    m o m o r p h i s m s f r o m s e t s , n a m e l y e x i s t e n t i a l q u a n t i c a t i o n 9 ; n o n E m p t y , a n d

    t h e e l e m e n t - f u n c t i o n x 2 f o r a g i v e n x . T h e i r d e n i t i o n s a r e :

    9 = _ =

    n o n E m p t y = _ = ( t r u e )

    ( x 2 ) = _ = f

    w h e r e f a = ( x = a )

    U n i v e r s a l q u a n t i c a t i o n i s d e n e d s i m i l a r l y a s a + + ! h o m o m o r p h i s m .

    4 . 5 0 0 1 0 N o n e m p t y m o b i l e s

    A n o t h e r p o s s i b l e d a t a s t r u c t u r e i s t h i s : j o i n + + h a s n o u n i t ] , b u t i t i s n o t

    a s s o c i a t i v e , a n d i s n o t c o m m u t a t i v e o r i d e m p o t e n t . O n e c o u l d t h i n k o f t h e s e

    s t r u c t u r e s a s m o b i l e s

    1

    . T h e y a r e l i k e t r e e s t h a t c a n r o t a t e . A n y s u b t r e e c a n

    a l s o r o t a t e , i n d e p e n d e n t l y o f t h e r e s t o f t h e t r e e . I n g o i n g f r o m t r e e s t o m o b i l e s ,

    t h e s t r u c t u r e s l o s e t h e i r s e n s e o f l e f t a n d r i g h t .

    T h i s b i n a r y f u n c t i o n o f n a t u r a l n u m b e r s h a s p r o p e r t i e s 0 0 1 0 :

    n m = ( n m a x m ) + 1

    I t i s n o t a s s o c i a t i v e , b u t c o m m u t a t i v e . T h e f u n c t i o n d e p t h i s a h o m o m o r -

    p h i s m f r o m n o n e m p t y m o b i l e s t o

    d e p t h = = ( 1 )

    T h e f u n c t i o n d e p t h i s a l s o a h o m o m o r p h i s m f r o m 0 0 0 0 n o n e m p t y t r e e s

    b e c a u s e t h e y a r e h i g h e r t h a n 0 0 1 0 n o n e m p t y m o b i l e s , b u t n o t f r o m p o s s i b l y -

    e m p t y m o b i l e s , b e c a u s e h a s n o u n i t . H o w e v e r , i t s d e n i t i o n c a n b e a d j u s t e d

    t o h a v e u n i t 0 :

    n m = ( n m a x m ) f ( n m n m = 0 ) e l s e ( n m a x m ) + 1

    a n d t h e n d e p t h = = ( 1 )

    i s d e n e d o n p o s s i b l y - e m p t y m o b i l e s t o o ,

    w i t h d e p t h : ] = 0 .

    1

    M o b i l e s w e r e i n v e n t e d b y t h e A l e x a n d e r C a l d e r ( 1 9 8 9 - 1 9 7 6 ) L i p 7 6 ] . T h e y c o n s i s t o f

    o b j e c t s s u s p e n d e d b y t h r e a d s f r o m w i r e s . M a r c e l D u c h a m p n a m e d t h e m \ m o b i l e s " b e c a u s e

    t h e o b j e c t s m o v e i n t h e w i n d . C a l d e r c a l l e d h i s x e d s c u l p t u r e s \ s t a b i l e s " .

  • 8/3/2019 The Boom Hierarchy 93

    7/8

    4 . 6 0 1 0 1 N o n e m p t y i d e m p o t e n t l i s t s

    A n i d e m p o t e n t l i s t i s l i k e a n o r m a l l i s t , b u t d i s r e g a r d s e q u a l a d j a c e n t s u b l i s t s .

    S o f o r i d e m p o t e n t l i s t s w e h a v e :

    \ b a n a n a " = \ b a n a " = \ b b b a b a n a n a n a " .

    F o r l i s t s a s + + b s = c s h a s a u n i q u e s o l u t i o n f o r a s , g i v e n b s a n d c s . T h a t i s

    n o t s o f o r i d e m p o t e n t l i s t s . T h e p r o p e r t i e s 0 1 0 1 s e e m a s t r a n g e c o m b i n a t i o n ,

    b u t t h e r e a r e f u n c t i o n s t h a t s a t i s f y t h e m : t h e p a i r p r o j e c t i o n s a n d . T h e y

    h a v e n o ( l e f t a n d r i g h t ) u n i t s , a r e a s s o c i a t i v e , a ( b c ) = ( a b ) c

    a r e n o t c o m m u t a t i v e , b u t t h e y a r e i d e m p o t e n t , a a = a . T h e w e l l - k n o w n

    f u n c t i o n s h e a d a n d l a s t a r e h o m o m o r p h i s m s f r o m n o n e m p t y i d e m p o t e n t l i s t s

    t o t h e p a i r - p r o j e c t i o n s :

    h e a d = =

    l a s t = =

    N o n e m p t y i d e m p o t e n t l i s t s c a n b e t h o u g h t o f a s n o n e m p t y s e t s w i t h t w o

    m e m b e r - s e l e c t i n g f u n c t i o n s . S i n c e n o n e m p t y l i s t s a r e h i g h e r t h a n i d e m p o t e n t

    n o n e m p t y l i s t s , h e a d c a n b e a p p l i e d t o t h e m t o o .

    5 C o n c l u s i o n a n d r e l a t e d w o r k

    T h e B o o m h i e r a r c h y c o m p r i s e s m o r e t h a n f o u r d a t a s t r u c t u r e s . I n a B o o m d a t a

    s t r u c t u r e a n y o f t h e f o u r p r o p e r t i e s U N I T , A S S O C , C O M M , a n d I D E M c a n b e

    p r e s e n t o r a b s e n t , t h e r e f o r e t h e r e a r e 1 6 d a t a s t r u c t u r e s ( o f v a r y i n g p r a c t i c a l -

    i t y ) . A n y d a t a s t r u c t u r e c a n b e t r a n s l a t e d t o o n e w i t h a s u p e r s e t o f p r o p e r t i e s ,

    b e c a u s e i t t h e n l o s e s s t r u c t u r a l i n f o r m a t i o n , b u t i t c a n n o t b e t r a n s l a t e d t o o n e

    w i t h a s u b s e t o f p r o p e r t i e s , b e c a u s e i t t h e n w o u l d g a i n s t r u c t u r a l i n f o r m a t i o n ,

    a n d t h e r e i s a c h o i c e a b o u t w h a t i n f o r m a t i o n s h o u l d b e a d d e d .

    T h e B o o m h i e r a r c h y a n d S q u i g g o l a r e r s t p r e s e n t e d i n M e e 8 6 ] a n d B i r 8 6 ] ,

    a n d f r o m t h e n i n m a n y p u b l i c a t i o n s o f t h e \ D u t c h S c h o o l " , m o s t l y b a s e d o n

    c a t e g o r y t h e o r y . I n B a c 8 9 ] t h e y a r e c o m p a r e d t o t h e E i n d h o v e n q u a n t i e r

    e x p r e s s i o n n o t a t i o n . H o o 9 2 ] p r e s e n t s t h e B o o m h i e r a r c h y f o r r e l a t i o n s , a n d

    J e u 9 2 ] i n a c a t e g o r y c o n t e x t .

    R e f e r e n c e s

    B a c 8 9 ] R o l a n d B a c k h o u s e . A n e x p l o r a t i o n o f t h e B i r d - M e e r t e n s F o r m a l i s m .

    I n t e r n a t i o n a l S u m m e r s c h o o l o n C o n s t r u c t i v e A l g o r i t h m i c s , A m e l a n d

    1 9 8 9 , S e p t e m b e r 1 9 8 9 .

    B i r 8 6 ] R i c h a r d S . B i r d . A n i n t r o d u c t i o n t o t h e t h e o r y o f l i s t s . I n M . B r o y ,

    e d i t o r , L o g i c o f P r o g r a m m i n g a n d C a l c u l i o f D i s c r e t e D e s i g n , v o l u m e

    F 3 6 o f N A T O A S I S e r i e s . S p r i n g e r V e r l a g , 1 9 8 6 .

    H o o 9 2 ] P a u l F . H o o g e n d i j k . ( R e l a t i o n a l ) P r o g r a m m i n g L a w s i n B o o m H i e r -

    a r c h y o f T y p e s , v o l u m e 6 6 9 o f L e c t u r e N o t e s i n C o m p u t i n g S c i e n c e

    S p r i n g e r , J u n e / J u l y 1 9 9 2 .

  • 8/3/2019 The Boom Hierarchy 93

    8/8

    J e u 9 2 ] J o h a n J e u r i n g . T h e o r i e s f o r a l g o r i t h m c a l c u l a t i o n . L e c t u r e N o t e s o f

    t h e S T O P S u m m e r s c h o o l o n C o n s t r u c t i v e A l g o r i t h m i c s , 1 , S e p t e m b e r

    1 9 9 2 .

    L i p 7 6 ] J e a n L i p m a n . C a l d e r ' s U n i v e r s e . H a r r i s o n H o u s e , N e w Y o r k , 1 9 7 6 .

    M e e 8 6 ] L a m b e r t M e e r t e n s . A l g o r i t h m i c s - t o w a r d s p r o g r a m m i n g a s a m a t h -

    e m a t i c a l a c t i v i t y . M a t h e m a t i c s a n d C o m p u t e r S c i e n c e , 1 , 1 9 8 6 . C W I

    M o n o g r a p h s ( J . W . d e B a k k e r , M . H a z e w i n k e l , J . K . L e n s t r a , e d s . )

    N o r t h H o l l a n d , P u h l . C o .