16
n o l m j k h i v x y z A B C D E N F G H I J K L M q p O P Q R S T U d e f g 9 a b c 5 6 7 8 1 2 3 4 t u r s w Pre-Processing What is the best amount of amortized preprocessing? E.g., for the 16x16 spatial dataset at right? Note that there is no count measurement associated with each point and similarity is simple spatial closeness. In a real image (say with 1 million pixels and the three RGB attributes in which we are interested in spectral closeness in R,G and B, not spatial closeness in x and y (horizontal and vertical positions) then the number of attributes is k=1..n b k where b k =log 2 (MaxValue(A k )).

n o l m j k h i

Embed Size (px)

DESCRIPTION

Pre-Processing What is the best amount of amortized preprocessing? E.g., for the 16x16 spatial dataset at right? Note that there is no count measurement associated with each point and similarity is simple spatial closeness. - PowerPoint PPT Presentation

Citation preview

Page 1: n     o       l     m j     k       h     i

n o

l m

j k

h i

v

x y z A B

C D

E N F

G H I J K L M

q

p O

P Q R

S T

U

d e f g

9 a b c

5 6 7 8

1 2 3 4

t u

r s

w

Pre-Processing

What is the best amount of amortized preprocessing?

E.g., for the 16x16 spatial dataset at right?

Note that there is no count measurement associated with each point and similarity is simple spatial closeness.

In a real image (say with 1 million pixels and the three RGB attributes in which we are interested in spectral closeness in R,G and B, not spatial closeness in x and y (horizontal and vertical positions) then the number of attributes is k=1..nbk where bk=log2(MaxValue(Ak)).

Page 2: n     o       l     m j     k       h     i

Pre-processing costs? Pairs withinattributes first (what Taufik does).

k

125634789adebcfghjiklnmoUSTPQpROwvIJKLMGECxyNHFzADBqrstu

56

a3

00000000000000000000000000000000110000000000000000011111

7

a2

00000000000000000000000011111111100011100000111111101111

23

a1

00001111000011110011001100100011111100111111011001111111

34

a0

01010101010101011010101010001010000101000001000010010101

22

b3

00000000000000000000000000000000001111111111111111111111

22

b2

00000000000000001111111111111111010000011111111111111111

34

b1

00000000111111110000111100011111011111100111000111111111

35

b0

00110011001100110101010101100101111111101011101110100011

33

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

a3

00000000000000000000000000000000110000000000000000011111

7

a2

00000000000000000000000011111111100011100000111111101111

23

5 2

rc(a3^a2') no^ required = rc(a3) - rc(a3^a2) = 7-5=2 rc(a3'^a2) ^ req, (but just count black-0 red-1 combos = 18) ( a3^a2 and a3'^a2 in 1 instr or in || ?)

18

rc(a3'^a2') no ^ req, = rc(a3') - rc(a3'^a2) = 49 - 18 = 31 (so far: 4 rc's out of 2 ANDs)

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

a3

00000000000000000000000000000000110000000000000000011111

7

a1

00001111000011110011001100100011111100111111011001111111

34

rc(a3^a1') no^ required = rc(a3) - rc(a3^a1) = 7-7=0

7 0

rc(a3'^a1) ^ req, (but just count black-0 red-1 combos = 27)

27

rc(a3'^a1') no ^ req, = rc(a3') - rc(a3'^a1) = 49 - 27 = 22

22

a3

00000000000000000000000000000000110000000000000000011111

7

a0

01010101010101011010101010001010000101000001000010010101

22

rc(a3^a0') no^ required = rc(a3) - rc(a3^a0) = 7-3=4

3 4

rc(a3'^a0) ^ req, (but just count black-0 red-1 combos = 19)

19

rc(a3'^a0') no ^ req, = rc(a3') - rc(a3'^a0) = 49 - 19 = 30

30

So far, 12 rootcounts are yielded by 6 AND operations. Note that the ANDs are all with Pa,3 or P'a,3 so parallelism and/or pipelining is possible (e.g., think about a future quantum computer in which (almost magically) multiple state values can be recorded (e.g., multple parallel AND results may be retained or at least the 4 result states of black/red 0/1 can be retained in register simaltaneously???)).

Page 3: n     o       l     m j     k       h     i

Pre-processing costs?

k

125634789adebcfghjiklnmoUSTPQpROwvIJKLMGECxyNHFzADBqrstu

56

a3

00000000000000000000000000000000110000000000000000011111

7

a2

00000000000000000000000011111111100011100000111111101111

23

a1

00001111000011110011001100100011111100111111011001111111

34

a0

01010101010101011010101010001010000101000001000010010101

22

b3

00000000000000000000000000000000001111111111111111111111

22

b2

00000000000000001111111111111111010000011111111111111111

34

b1

00000000111111110000111100011111011111100111000111111111

35

b0

00110011001100110101010101100101111111101011101110100011

33

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

5 2

rc(a2^a1') no^ required = rc(a2) - rc(a2^a1) = 23-13=10 rc(a2'^a1) ^ req, (but just count black-0 red-1 combos = 21)

18

rc(a2'^a1') no ^ req, = rc(a2') - rc(a2'^a1) = 33 - 21 = 12

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

7 0

27

22

3 4

19

30

a2

00000000000000000000000011111111100011100000111111101111

23

a1

00001111000011110011001100100011111100111111011001111111

34

13 10

21

12

a2

00000000000000000000000011111111100011100000111111101111

23

a0

01010101010101011010101010001010000101000001000010010101

22

7

rc(a2^a0') no^ required = rc(a2) - rc(a2^a0) = 23-7=16

16

rc(a2'^a0) ^ req, (but just count black-0 red-1 combos = 15)

15

rc(a2'^a0') no ^ req, = rc(a2') - rc(a2'^a0) = 33 - 15 = 18

18

Page 4: n     o       l     m j     k       h     i

Pre-processing costs?

k

125634789adebcfghjiklnmoUSTPQpROwvIJKLMGECxyNHFzADBqrstu

56

a3

00000000000000000000000000000000110000000000000000011111

7

a2

00000000000000000000000011111111100011100000111111101111

23

a1

00001111000011110011001100100011111100111111011001111111

34

a0

01010101010101011010101010001010000101000001000010010101

22

b3

00000000000000000000000000000000001111111111111111111111

22

b2

00000000000000001111111111111111010000011111111111111111

34

b1

00000000111111110000111100011111011111100111000111111111

35

b0

00110011001100110101010101100101111111101011101110100011

33

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

5 2

rc(a1^a0') no^ required = rc(a1) - rc(a1^a0) = 34-12=22rc(a1'^a0) ^ req, (but just count black-0 red-1 combos = 10)

18

rc(a1'^a0') no ^ req, = rc(a1') - rc(a1'^a0) = 22 - 10 = 12 (total of 12 ANDs so far.

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

7 0

27

22

0

0

0

0

0

0

0

03 4

19

30

13 10

21

12

7 16

15

18

a1

00001111000011110011001100100011111100111111011001111111

34

a0

01010101010101011010101010001010000101000001000010010101

22

12 22

10

12

At this point we can note that we have all the a-attribute rootcounts (12 AND and RootCount operations required) preprocessed that are needed for TV analysis. We also note that it may be possible to produce this preprocessing information with 6 steps (since we humans can pick it off with the 6 AND/RC steps involving a3^a2, a3^a1, a3^a0, a2^a1, a2^a0, a1^a0. In fact, on the next slide, I will do it that way for those needed for the b-attribute).

Page 5: n     o       l     m j     k       h     i

Pre-processing costs?

k

125634789adebcfghjiklnmoUSTPQpROwvIJKLMGECxyNHFzADBqrstu

56

a3

00000000000000000000000000000000110000000000000000011111

7

a2

00000000000000000000000011111111100011100000111111101111

23

a1

00001111000011110011001100100011111100111111011001111111

34

a0

01010101010101011010101010001010000101000001000010010101

22

b3

00000000000000000000000000000000001111111111111111111111

22

b2

00000000000000001111111111111111010000011111111111111111

34

b1

00000000111111110000111100011111011111100111000111111111

35

b0

00110011001100110101010101100101111111101011101110100011

33

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

5 2

18

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

7 0

27

22

0

0

0

0

0

0

0

03 4

19

30

13 10

21

12

7 16

15

18

12 22

10

12

b3

00000000000000000000000000000000001111111111111111111111

22

b2

00000000000000001111111111111111010000011111111111111111

34

17

17

5

17

b3

00000000000000000000000000000000001111111111111111111111

22

b1

00000000111111110000111100011111011111100111000111111111

35

17

18

5

16

b3

00000000000000000000000000000000001111111111111111111111

22

b0

00110011001100110101010101100101111111101011101110100011

33

17

18

7

16

Page 6: n     o       l     m j     k       h     i

Pre-processing costs?

k

125634789adebcfghjiklnmoUSTPQpROwvIJKLMGECxyNHFzADBqrstu

56

a3

00000000000000000000000000000000110000000000000000011111

7

a2

00000000000000000000000011111111100011100000111111101111

23

a1

00001111000011110011001100100011111100111111011001111111

34

a0

01010101010101011010101010001010000101000001000010010101

22

b3

00000000000000000000000000000000001111111111111111111111

22

b2

00000000000000001111111111111111010000011111111111111111

34

b1

00000000111111110000111100011111011111100111000111111111

35

b0

00110011001100110101010101100101111111101011101110100011

33

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

5 2

18

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

7 0

27

22

0

0

0

0

0

0

0

03 4

19

30

13 10

21

12

7 16

15

18

12 22

10

12

17

17

5

17

17

18

5

16

17

18

7

16

b2

00000000000000001111111111111111010000011111111111111111

34

b1

00000000111111110000111100011111011111100111000111111111

35

22

13

12

9

b2

00000000000000001111111111111111010000011111111111111111

34

b0

00110011001100110101010101100101111111101011101110100011

33

19

14

15

8

b1

00000000111111110000111100011111011111100111000111111111

35

b0

00110011001100110101010101100101111111101011101110100011

33

21 12

14

9

Pre-processing for TV-analysis is now complete . It took 24 AND/RC operation steps (or possibly only 12 if we had quadra-stable registers inwhich to do our ANDs and Counts???).

Which operation steps are required to generate the information needed for 1-hi grid cell counts? (next slides).

Page 7: n     o       l     m j     k       h     i

Pre-processing costs?

k

125634789adebcfghjiklnmoUSTPQpROwvIJKLMGECxyNHFzADBqrstu

56

a3

00000000000000000000000000000000110000000000000000011111

7

a2

00000000000000000000000011111111100011100000111111101111

23

a1

00001111000011110011001100100011111100111111011001111111

34

a0

01010101010101011010101010001010000101000001000010010101

22

b3

00000000000000000000000000000000001111111111111111111111

22

b2

00000000000000001111111111111111010000011111111111111111

34

b1

00000000111111110000111100011111011111100111000111111111

35

b0

00110011001100110101010101100101111111101011101110100011

33

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

5 2

18

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

7 0

27

22

0

0

0

0

0

0

0

03 4

19

30

13 10

21

12

7 16

15

18

12 22

10

12

17

17

5

17

17

18

5

16

17

18

7

16

22

13

12

9

19

14

15

8

21 12

14

9

a3

00000000000000000000000000000000110000000000000000011111

7

b3

00000000000000000000000000000000001111111111111111111111

22

5

rc(a3^b3') = rc(a3) - rc(a3^b3) = 7-5 = 2

rc(a3'^b3) = rc(b3) - rc(a3^b3) = 22-5 = 17rc(a3'^b3') = total - rc(a3^b3)-rc(a3^b3'(-rc(a3'^b3)=56-5-2-17=32

2

17

32

a3

00000000000000000000000000000000110000000000000000011111

7

b2

00000000000000001111111111111111010000011111111111111111

34

similarly, rc(a3^b2)=6 rc(a3^b2')=1 rc(a3'^b2)=28 rc(a3'^b2')=21

6

28

1

21

a3

00000000000000000000000000000000110000000000000000011111

7

b1

00000000111111110000111100011111011111100111000111111111

35

similarly, rc(a3^b1)=6 rc(a3^b1')=1 rc(a3'^b1)=29 rc(a3'^b1')=20

6

29

20

1

a3

00000000000000000000000000000000110000000000000000011111

7

b0

00110011001100110101010101100101111111101011101110100011

33

similarly, rc(a3^b0)=4 rc(a3^b0')=3 rc(a3'^b0)=29 rc(a3'^b0')=20

4

29

3

20

Note that these 4 cells require 1 AND/RC op and that suffices to do 1-hi grid cell (smoothing) core analysis.

1-hi smoothing yields the counts:

5

2

17

32

Page 8: n     o       l     m j     k       h     i

Pre-processing costs?

k

125634789adebcfghjiklnmoUSTPQpROwvIJKLMGECxyNHFzADBqrstu

56

a3

00000000000000000000000000000000110000000000000000011111

7

a2

00000000000000000000000011111111100011100000111111101111

23

a1

00001111000011110011001100100011111100111111011001111111

34

a0

01010101010101011010101010001010000101000001000010010101

22

b3

00000000000000000000000000000000001111111111111111111111

22

b2

00000000000000001111111111111111010000011111111111111111

34

b1

00000000111111110000111100011111011111100111000111111111

35

b0

00110011001100110101010101100101111111101011101110100011

33

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

5 2

18

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

7 0

27

22

0

0

0

0

0

0

0

03 4

19

30

13 10

21

12

7 16

15

18

12 22

10

12

17

17

5

17

17

18

5

16

17

18

7

16

22

13

12

9

19

14

15

8

21 12

14

9

5 2

17

32

similarly, rc(a2^b3)=14 rc(a2'^b3)=8 rc(a2^b3')=9 rc(a2'^b3')=25

6

28

1

21

6

29

20

14

29

3

20

a2

00000000000000000000000011111111100011100000111111101111

23

b3

00000000000000000000000000000000001111111111111111111111

22

14

8

9

25

b2

00000000000000001111111111111111010000011111111111111111

34

similarly, rc(a2^b2)=19 rc(a2'^b2)=15 rc(a2^b2')=4 rc(a2'^b2')=18

19

15

4

18

b1

00000000111111110000111100011111011111100111000111111111

35

similarly, rc(a2^b1)=16 rc(a2'^b1)=19 rc(a2^b1')=7 rc(a2'^b1')=14

16

19

14

18

b0

00110011001100110101010101100101111111101011101110100011

33

similarly, rc(a2^b0)=15 rc(a2'^b0)=18 rc(a2^b0')=8 rc(a2'^b0')=15

15

18

8

15

Page 9: n     o       l     m j     k       h     i

Pre-processing costs?

k

125634789adebcfghjiklnmoUSTPQpROwvIJKLMGECxyNHFzADBqrstu

56

a3

00000000000000000000000000000000110000000000000000011111

7

a2

00000000000000000000000011111111100011100000111111101111

23

a1

00001111000011110011001100100011111100111111011001111111

34

a0

01010101010101011010101010001010000101000001000010010101

22

b3

00000000000000000000000000000000001111111111111111111111

22

b2

00000000000000001111111111111111010000011111111111111111

34

b1

00000000111111110000111100011111011111100111000111111111

35

b0

00110011001100110101010101100101111111101011101110100011

33

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

5 2

18

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

7 0

27

22

0

0

0

0

0

0

0

03 4

19

30

13 10

21

12

7 16

15

18

12 22

10

12

17

17

5

17

17

18

5

16

17

18

7

16

22

13

12

9

19

14

15

8

21 12

14

9

5 2

17

32

similarly, rc(a1^b3)=17 rc(a1'^b3)=5 rc(a1^b3')=17 rc(a1'^b3')=17

6

28

1

21

6

29

20

14

29

3

20

14

8

9

25

19

15

4

18

16

19

14

18

15

18

8

15

a1

00001111000011110011001100100011111100111111011001111111

34

b3

00000000000000000000000000000000001111111111111111111111

22

17

5

17

17

b2

00000000000000001111111111111111010000011111111111111111

34

similarly, rc(a1^b2)=22 rc(a1'^b2)=12 rc(a1^b2')=12 rc(a1'^b2')=10

22

12

12

10

b1

00000000111111110000111100011111011111100111000111111111

35

similarly, rc(a1^b1)=22 rc(a1'^b1)=13 rc(a1^b1')=12 rc(a1'^b1')=9

22

13

12

9

b0

00110011001100110101010101100101111111101011101110100011

33

similarly, rc(a1^b0)=20 rc(a1'^b0)=13 rc(a1^b0')=14 rc(a1'^b0')=9

20

13

14

9

a0

01010101010101011010101010001010000101000001000010010101

22

b3

00000000000000000000000000000000001111111111111111111111

22

similarly, rc(a0^b3)=7 rc(a0'^b3)=15 rc(a0^b3')=15 rc(a0'^b3')=19

7

15

15

19

b2

00000000000000001111111111111111010000011111111111111111

34

similarly, rc(a0^b2)=12 rc(a0'^b2)=22 rc(a0^b2')=10 rc(a0'^b2')=12

12

22

10

12

b1

00000000111111110000111100011111011111100111000111111111

35

similarly, rc(a0^b1)=15 rc(a0'^b1)=20 rc(a0^b1')=7 rc(a0'^b1')=14

15

20

7

14

b0

00110011001100110101010101100101111111101011101110100011

33

similarly, rc(a0^b0)=9 rc(a0'^b0)=24 rc(a0^b0')=13 rc(a0'^b0')=10(16 additional AND operations were required for the mixed attributepairs. The total was 28 ANDs)

9

24

13

10

Page 10: n     o       l     m j     k       h     i

For TV analysis, we need to preprocess the 24 red AND/RC operation steps.

k

125634789adebcfghjiklnmoUSTPQpROwvIJKLMGECxyNHFzADBqrstu

56

a3

00000000000000000000000000000000110000000000000000011111

7

a2

00000000000000000000000011111111100011100000111111101111

23

a1

00001111000011110011001100100011111100111111011001111111

34

a0

01010101010101011010101010001010000101000001000010010101

22

b3

00000000000000000000000000000000001111111111111111111111

22

b2

00000000000000001111111111111111010000011111111111111111

34

b1

00000000111111110000111100011111011111100111000111111111

35

b0

00110011001100110101010101100101111111101011101110100011

33

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

5 2

18

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

7 0

27

22

3 4

19

30

13 10

21

12

7 16

15

18

12 22

10

12

17

17

5

17

17

18

5

16

17

18

7

16

22

13

12

9

19

14

15

8

21 12

14

9

5 2

17

32

6

28

1

21

6

29

20

14

29

3

20

14

8

9

25

19

15

4

18

16

19

14

18

15

18

8

15

17

5

17

17

22

12

12

10

22

13

12

9

20

13

14

9

7

15

15

19

12

22

10

12

15

20

7

14

9

24

13

10

Page 11: n     o       l     m j     k       h     i

We can think of the preprocessing as filling RoloDex cards (Note that this RoloDex is built to fit TV-analysis - i.e., 2-D cards with the primary one containing the needed dual-AND P-tree rootcounts needed for TV analysis)

a b a' b'Attributes and Complements

(e.g., for 1-hi data)1

1

A+A'

A+

A'

A+

A'

dual rc card

e.g., a3-tri-Ptree rc slice

card

e.g., a3b2-tri-Ptree rc slice

card

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

5 2

18

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

7 0

27

22

3 4

19

30

13 10

21

12

7 16

15

18

12 22

10

12

17

17

5

17

17

18

5

16

17

18

7

16

22

13

12

9

19

14

15

8

21 12

14

9

5 2

17

32

6

28

1

21

6

29

20

14

29

3

20

14

8

9

25

19

15

4

18

16

19

14

18

15

18

8

15

17

5

17

17

22

12

12

10

22

13

12

9

20

13

14

9

7

15

15

19

12

22

10

12

15

20

7

14

9

24

13

10

Page 12: n     o       l     m j     k       h     i

For 1-hi grid analysis, need total count, 56, the rc of the singles rc(Pa,3)=7 rc(Pb,3)=22 the rc of the dual rc(Pa,3^Pb,3

) = 5

a3 a2 a1 a0 b3 b2 b1 b0 a3' a2' a1' a0' b3' b2' b1' b0'

a3a2

a1a0

b3b2

b1b0

a3'

a2'

a1'

a0'

b3'

b2'

b1'

b0'

5 2

18

7

23

34

22

22

34

35

33

49

33

22

34

34

22

21

23

56

31

7 0

27

22

3 4

19

30

13 10

21

12

7 16

15

18

12 22

10

12

17

17

5

17

17

18

5

16

17

18

7

16

22

13

12

9

19

14

15

8

21 12

14

9

5 2

17

32

6

28

1

21

6

29

20

14

29

3

20

14

8

9

25

19

15

4

18

16

19

14

18

15

18

8

15

17

5

17

17

22

12

12

10

22

13

12

9

20

13

14

9

7

15

15

19

12

22

10

12

15

20

7

14

9

24

13

10

n o

l m

j k

h i

v

x y z A B

C D

E N F

G H I J K L M

q

p O

P Q R

S T

U

d e f g

9 a b c

5 6 7 8

1 2 3 4

t u

r s

w

rc(Pa3^Pb3) = 5

rc(Pa,3) - rc(Pa3^Pb3) = 7-5 = 2

a,3=0 a,3=1

b,3=0

b,3=1

rc(Pb,3) - rc(Pa3^Pb3) =22 -5 = 17

56 - 5 - 17 - = 32

The lower left 1-hi cell is half full and therefore the most core of the 4.

Upper left is over 1/4th full and is next most core The other two are not very dense (as 1-hi cells).

The way to view 1-hi smoothing is to consider the space to still have 56 points but to have 5 points at (11.5, 11.5)2 points at (11.5, 3.5)17 points at ( 3.5, 11.5) and32 points at ( 3.5, 11.5)

5

2

17

32

Page 13: n     o       l     m j     k       h     i

To drill into a j-hi cell? Theorem: In R(A1..Ad), the j-hi Cell identified by p=(p1..pd) where pk=pk,bk-1 ..pk,bk-j

and pi,j{0,1} (i.e., identified by the common j-hi bits of its content points in each dimension), we only need Ppattern for all super-(j+1)-patterns of p formed by appending 1-bits.

For n=2 we have already shown it. For n=3 the following may convince ;-) Within the j-hi cell identified by a fixed pattern of j-high-order bits in all dimensions, p, we need only the P-tree masks for the following 8 objects

a

c

b

cj=1

aj=1

bj=1

aj=1bj=1cj=1

aj=1cj=1

aj=1bj=1

bj=1cj=1

aj=1bj=1cj=1

-aj=1bj=0cj=1

=

So we have the following done

same for aj=0 bj=1 cj=1

same for aj=1 bj=1 cj=0

This - transparent ones gives aj=0 bj=1 cj=0

This - transparent ones gives aj=1 bj=0 cj=0

This - transparent ones gives aj=0 bj=0 cj=1

Total - transparent ones gives aj=0 bj=0 cj=0

In general, for n dimensions, we must have:

n n n + + ... + P-trees rootcounted1 2 n

Of course to drill down one morebit level, we need, not only the rc ofthat j+1-hi cell but its Ptree Maskplus the Ptree masks of each sub-rectangle generated by adding 1-bits(as shown on this slide).

So if we are planning to drill furtherwe might as well generate all cellPtrees, not just their rcs.

Another thought: If we approach it from top down, sincewe are limiting the j-level of the j-hicell analysis, why not also limit the bit granularity of the TV-analysis inthe same way (i.e., as preprocessingcalculate Ptrees for all patterns downto a given j-hi level, then, use onlythose Ptrees (with their rootcounts) tocompute TV contour nbrhds and gridcell 'contours"

Page 14: n     o       l     m j     k       h     i

R(A1..An) TV(a)=xR(x-a)o(x-a)

= xRd=1..n(xd2 - 2adxd + ad

2)

= xRd=1..n(k2kxdk)2 - 2xRd=1..nad(k2kxdk) + xRd=1..nad2

= xd(i2ixdi)(j2

jxdj) - 2xRd=1..nad(k2kxdk) + xRd=1..nad2

= xdi,j 2i+jxdixdj

- 2 k2k dad

xxdk + x|a|2

= i,j 2i+j dxxdixdj

- |R||a|2 So,2 k2k dad

|Pdk| +

TV(a) = i,j2i+j d|Pdi^dj| - |R||a|2 k2

k+1 dad |Pdk| +

Page 15: n     o       l     m j     k       h     i

13 23 13' 23'

1323

13'

23'

7

22

49

34

56

5 2

17

32

n o

l m

j k

h i

v

x y z A B

C D

E N F

G H I J K L M

q

p O

P Q R

S T

U

d e f g

9 a b c

5 6 7 8

1 2 3 4

t u

r s

w

d=2, i,j,k=3..0. With 1-hi smoothing,

becomes

So TV1hi(a) = 64*(7+22) - 16*(7a1+22a2) + 56|a|2 = 1856 - 112a1 - 352a2 - 56|a|2

= 1856 - 112a1 - 352a2 + 56(a12+a2

2)

TV(a) = i,j2i+j d|Pdi^dj| - |R||a|2 k2

k+1 dad |Pdk| +

26 d |Pd3^d3| - 56|a|2 24 d ad |Pd3| +

Page 16: n     o       l     m j     k       h     i

R(A1..An) TV(a)=xR(x-a)o(x-a) If we use d for a index variable over the dimensions, = xRd=1..n(xd

2 - 2adxd + ad2) i,j,k bit slices indexes

= xRd=1..n(k2kxdk)2 - 2xRd=1..nad(k2kxdk) + |R||a|2

= xd(i2ixdi)(j2

jxdj) - 2xRd=1..nad(k2kxdk) + |R||a|2

= xdi,j 2i+jxdixdj

- 2 k2k dad

xxdk + |R||a|2

= i,j,d 2i+j xxdixdj

- |R||a|2 So,2 k2k dad

|Pdk| +

TV(a) = i,j,d 2i+j |Pdi^dj| - |R||a|2 k2

k+1 dad |Pdk| +

or collecting all truly single predicates:

TV(a) = i>j,d 2i+j+1 |Pdi^dj| + |R| (a1

2+..+an2)k,d (2

2k- 2k+1ad) |Pdk| +

I note that the first term (the only one involving dual bitslice predicates) does not depend upon a at all!That means whatever the first term value is, it can be subtracted from the derived attr values, TV(a),giving a new derived attribute with the very same contours as TV and which can be calculated simplyfrom the basic Ptree rootcounts alone!!!!

Can that be right? If so, then the preprocessing for SMART-TV is zero! (given we have basic P-trees).