%PDF-1.5 % 4 0 obj << /S /GoTo /D (Doc-Start) >> endobj 7 0 obj (Abstract) endobj 8 0 obj << /S /GoTo /D (Doc-Start) >> endobj 10 0 obj (Acknowledgements) endobj 11 0 obj << /S /GoTo /D (Doc-Start) >> endobj 13 0 obj (Contents) endobj 14 0 obj << /S /GoTo /D (Doc-Start) >> endobj 16 0 obj (List of Publications) endobj 17 0 obj << /S /GoTo /D (Doc-Start) >> endobj 19 0 obj (List of Acronyms) endobj 20 0 obj << /S /GoTo /D (chapter.1) >> endobj 23 0 obj (Introduction) endobj 24 0 obj << /S /GoTo /D (section.1.1) >> endobj 27 0 obj (Background) endobj 28 0 obj << /S /GoTo /D (section.1.2) >> endobj 31 0 obj (Research Motivation) endobj 32 0 obj << /S /GoTo /D (section.1.3) >> endobj 35 0 obj (Research Hypothesis and Objectives) endobj 36 0 obj << /S /GoTo /D (section.1.4) >> endobj 39 0 obj (Thesis Organisation) endobj 40 0 obj << /S /GoTo /D (chapter.2) >> endobj 43 0 obj (Related work) endobj 44 0 obj << /S /GoTo /D (section.2.1) >> endobj 47 0 obj (Introduction) endobj 48 0 obj << /S /GoTo /D (section.2.2) >> endobj 51 0 obj (Classic Feature Recognition Approaches) endobj 52 0 obj << /S /GoTo /D (subsection.2.2.1) >> endobj 55 0 obj (Graph-Based Methods) endobj 56 0 obj << /S /GoTo /D (subsection.2.2.2) >> endobj 59 0 obj (Volume Decomposition Methods) endobj 60 0 obj << /S /GoTo /D (subsection.2.2.3) >> endobj 63 0 obj (Hint-based Methods) endobj 64 0 obj << /S /GoTo /D (subsection.2.2.4) >> endobj 67 0 obj (Landmark Declarative Feature Recognition Systems) endobj 68 0 obj << /S /GoTo /D (section.2.3) >> endobj 71 0 obj (Feature Finding as Data Retrieval) endobj 72 0 obj << /S /GoTo /D (section.2.4) >> endobj 75 0 obj (SQL Syntax) endobj 76 0 obj << /S /GoTo /D (section.2.5) >> endobj 79 0 obj (Relational Query Optimization) endobj 80 0 obj << /S /GoTo /D (subsection.2.5.1) >> endobj 83 0 obj (Overview) endobj 84 0 obj << /S /GoTo /D (subsection.2.5.2) >> endobj 87 0 obj (Performance Model) endobj 88 0 obj << /S /GoTo /D (subsection.2.5.3) >> endobj 91 0 obj (Generalizing Join Sequencing to Reduce CPU Cost) endobj 92 0 obj << /S /GoTo /D (subsection.2.5.4) >> endobj 95 0 obj (Scan Methods to Reduce I/O) endobj 96 0 obj << /S /GoTo /D (subsection.2.5.5) >> endobj 99 0 obj (Join Processing to Reduce CPU Cost) endobj 100 0 obj << /S /GoTo /D (section.2.6) >> endobj 103 0 obj (Gibson's Declarative Approach and Optimizations) endobj 104 0 obj << /S /GoTo /D (section.2.7) >> endobj 107 0 obj (Gibson's Optimizations and DB Query Optimization) endobj 108 0 obj << /S /GoTo /D (chapter.3) >> endobj 111 0 obj (Declarative Feature Definition) endobj 112 0 obj << /S /GoTo /D (section.3.1) >> endobj 115 0 obj (Introduction) endobj 116 0 obj << /S /GoTo /D (section.3.2) >> endobj 119 0 obj (Data) endobj 120 0 obj << /S /GoTo /D (section.3.3) >> endobj 123 0 obj (Syntax) endobj 124 0 obj << /S /GoTo /D (section.3.4) >> endobj 127 0 obj (Predicates) endobj 128 0 obj << /S /GoTo /D (subsection.3.4.1) >> endobj 131 0 obj (Topological Predicates) endobj 132 0 obj << /S /GoTo /D (subsection.3.4.2) >> endobj 135 0 obj (Geometric Predicates) endobj 136 0 obj << /S /GoTo /D (section.3.5) >> endobj 139 0 obj (Ways to Define Features) endobj 140 0 obj << /S /GoTo /D (subsection.3.5.1) >> endobj 143 0 obj (Definition by Primitives) endobj 144 0 obj << /S /GoTo /D (subsection.3.5.2) >> endobj 147 0 obj (Definition by Sub-features) endobj 148 0 obj << /S /GoTo /D (section.3.6) >> endobj 151 0 obj (Discussion) endobj 152 0 obj << /S /GoTo /D (subsection.3.6.1) >> endobj 155 0 obj (Expressive Power) endobj 156 0 obj << /S /GoTo /D (subsection.3.6.2) >> endobj 159 0 obj (The Compiler) endobj 160 0 obj << /S /GoTo /D (chapter.4) >> endobj 163 0 obj (Feature Recognizer Architecture) endobj 164 0 obj << /S /GoTo /D (section.4.1) >> endobj 167 0 obj (Overview) endobj 168 0 obj << /S /GoTo /D (section.4.2) >> endobj 171 0 obj (Manipulation Language) endobj 172 0 obj << /S /GoTo /D (section.4.3) >> endobj 175 0 obj (Main Modules) endobj 176 0 obj << /S /GoTo /D (subsection.4.3.1) >> endobj 179 0 obj (DB Query Optimizer) endobj 180 0 obj << /S /GoTo /D (subsection.4.3.2) >> endobj 183 0 obj (Translator) endobj 184 0 obj << /S /GoTo /D (subsection.4.3.3) >> endobj 187 0 obj (CAD Modeler) endobj 188 0 obj << /S /GoTo /D (section.4.4) >> endobj 191 0 obj (Optional Modules) endobj 192 0 obj << /S /GoTo /D (section.4.5) >> endobj 195 0 obj (Summary) endobj 196 0 obj << /S /GoTo /D (chapter.5) >> endobj 199 0 obj (SQLite Implementation and Quasi-quadratic Performance ) endobj 200 0 obj << /S /GoTo /D (section.5.1) >> endobj 203 0 obj (Overview) endobj 204 0 obj << /S /GoTo /D (section.5.2) >> endobj 207 0 obj (Testbed Implementation Details) endobj 208 0 obj << /S /GoTo /D (section.5.3) >> endobj 211 0 obj (Translation) endobj 212 0 obj << /S /GoTo /D (subsection.5.3.1) >> endobj 215 0 obj (Data Model) endobj 216 0 obj << /S /GoTo /D (subsection.5.3.2) >> endobj 219 0 obj (Translation Rules) endobj 220 0 obj << /S /GoTo /D (section.5.4) >> endobj 223 0 obj (Experiments) endobj 224 0 obj << /S /GoTo /D (subsection.5.4.1) >> endobj 227 0 obj (Performance Measurements) endobj 228 0 obj << /S /GoTo /D (subsection.5.4.2) >> endobj 231 0 obj (Benefits of Database Optimization) endobj 232 0 obj << /S /GoTo /D (subsection.5.4.3) >> endobj 235 0 obj (Definitions Affect Performance) endobj 236 0 obj << /S /GoTo /D (subsection.5.4.4) >> endobj 239 0 obj (Real Industrial Models) endobj 240 0 obj << /S /GoTo /D (section.5.5) >> endobj 243 0 obj (Theoretical Analysis) endobj 244 0 obj << /S /GoTo /D (subsection.5.5.1) >> endobj 247 0 obj (Execution Plan) endobj 248 0 obj << /S /GoTo /D (subsection.5.5.2) >> endobj 251 0 obj (Time Complexity) endobj 252 0 obj << /S /GoTo /D (section.5.6) >> endobj 255 0 obj (Summary and Conclusions) endobj 256 0 obj << /S /GoTo /D (chapter.6) >> endobj 259 0 obj (PostgreSQL Implementation and Linear Performance ) endobj 260 0 obj << /S /GoTo /D (section.6.1) >> endobj 263 0 obj (Overview) endobj 264 0 obj << /S /GoTo /D (subsection.6.1.1) >> endobj 267 0 obj (Testbed Implementation Details) endobj 268 0 obj << /S /GoTo /D (subsection.6.1.2) >> endobj 271 0 obj (SQLite Approach Fails with PostgreSQL) endobj 272 0 obj << /S /GoTo /D (subsection.6.1.3) >> endobj 275 0 obj (Assumptions) endobj 276 0 obj << /S /GoTo /D (section.6.2) >> endobj 279 0 obj (Translation) endobj 280 0 obj << /S /GoTo /D (subsection.6.2.1) >> endobj 283 0 obj (Data Model) endobj 284 0 obj << /S /GoTo /D (subsection.6.2.2) >> endobj 287 0 obj (Translation Rules) endobj 288 0 obj << /S /GoTo /D (section.6.3) >> endobj 291 0 obj (Discussion) endobj 292 0 obj << /S /GoTo /D (section.6.4) >> endobj 295 0 obj (Experiments) endobj 296 0 obj << /S /GoTo /D (subsection.6.4.1) >> endobj 299 0 obj (Old and New Translation Using SQLite) endobj 300 0 obj << /S /GoTo /D (subsection.6.4.2) >> endobj 303 0 obj (New translation using SQLite and PostgreSQL ) endobj 304 0 obj << /S /GoTo /D (subsection.6.4.3) >> endobj 307 0 obj (Real World Performance) endobj 308 0 obj << /S /GoTo /D (section.6.5) >> endobj 311 0 obj (Summary) endobj 312 0 obj << /S /GoTo /D (chapter.7) >> endobj 315 0 obj (Further Improvements Using Lazy Evaluation and Predicate Ordering ) endobj 316 0 obj << /S /GoTo /D (section.7.1) >> endobj 319 0 obj (Overview) endobj 320 0 obj << /S /GoTo /D (subsection.7.1.1) >> endobj 323 0 obj (Lazy Evaluation) endobj 324 0 obj << /S /GoTo /D (subsection.7.1.2) >> endobj 327 0 obj (Predicate Ordering) endobj 328 0 obj << /S /GoTo /D (section.7.2) >> endobj 331 0 obj (Experiments) endobj 332 0 obj << /S /GoTo /D (subsection.7.2.1) >> endobj 335 0 obj (Lazy Evaluation and Caching) endobj 336 0 obj << /S /GoTo /D (subsection.7.2.2) >> endobj 339 0 obj (Predicate Ordering) endobj 340 0 obj << /S /GoTo /D (section.7.3) >> endobj 343 0 obj (Summary) endobj 344 0 obj << /S /GoTo /D (chapter.8) >> endobj 347 0 obj (Discussion) endobj 348 0 obj << /S /GoTo /D (section.8.1) >> endobj 351 0 obj (Conclusion) endobj 352 0 obj << /S /GoTo /D (section.8.2) >> endobj 355 0 obj (Contribution) endobj 356 0 obj << /S /GoTo /D (section.8.3) >> endobj 359 0 obj (Limitations and Future Work) endobj 360 0 obj << /S /GoTo /D (section.8.4) >> endobj 363 0 obj (A Feature Recognition Architecture) endobj 364 0 obj << /S /GoTo /D (figure.caption.78) >> endobj 367 0 obj (Bibliography) endobj 368 0 obj << /S /GoTo /D [369 0 R /Fit] >> endobj 371 0 obj << /Length 547 /Filter /FlateDecode >> stream xڍUn0+x*r>ڲHQM$ ;HaXsYf0r9agbrI@Rc '#R$юS)?ɷd^mN9K~7J3P,ɧpX<ܶo7v~~/>*FP9I-2eRPnm`z 0r1_x}}V OSI2!2sd ̸^"HK}_fӔ{NSiHfyrQ$>SLFhcZ P{6e[ebQ YPL|D+o{-J+*]swί2xt||iU2MqtഥJ9