Dissertations / Theses on the topic 'Programming'
Create a spot-on reference in APA, MLA, Chicago, Harvard, and other styles
Consult the top 50 dissertations / theses for your research on the topic 'Programming.'
Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA, MLA, Harvard, Chicago, Vancouver, etc.
You can also download the full text of the academic publication as pdf and read online its abstract whenever available in the metadata.
Browse dissertations / theses on a wide variety of disciplines and organise your bibliography correctly.
Yung, Simon Yun Pui. "Definitive programming : a paradigm for exploratory programming." Thesis, University of Warwick, 1992. http://wrap.warwick.ac.uk/78859/.
Full textEspinoza, Daniel G. "On Linear Programming, Integer Programming and Cutting Planes." Diss., Georgia Institute of Technology, 2006. http://hdl.handle.net/1853/10482.
Full textWei, Hua. "Numerical Stability in Linear Programming and Semidefinite Programming." Thesis, University of Waterloo, 2006. http://hdl.handle.net/10012/2922.
Full textWe start with the error bound analysis of the search directions for the normal equation approach for LP. Our error analysis explains the surprising fact that the ill-conditioning is not a significant problem for the normal equation system. We also explain why most of the popular LP solvers have a default stop tolerance of only 10-8 when the machine precision on a 32-bit computer is approximately 10-16.
We then propose a simple alternative approach for the normal equation based interior-point method. This approach has better numerical stability than the normal equation based method. Although, our approach is not competitive in terms of CPU time for the NETLIB problem set, we do obtain higher accuracy. In addition, we obtain significantly smaller CPU times compared to the normal equation based direct solver, when we solve well-conditioned, huge, and sparse problems by using our iterative based linear solver. Additional techniques discussed are: crossover; purification step; and no backtracking.
Finally, we present an algorithm to construct SDP problem instances with prescribed strict complementarity gaps. We then introduce two measures of strict complementarity gaps. We empirically show that: (i) these measures can be evaluated accurately; (ii) the size of the strict complementarity gaps correlate well with the number of iteration for the SDPT3 solver, as well as with the local asymptotic convergence rate; and (iii) large strict complementarity gaps, coupled with the failure of Slater's condition, correlate well with loss of accuracy in the solutions. In addition, the numerical tests show that there is no correlation between the strict complementarity gaps and the geometrical measure used in [31], or with Renegar's condition number.
Kirby, Graham N. C. "Reflection and hyper-programming in persistent programming systems." Thesis, University of St Andrews, 1992. http://hdl.handle.net/10023/1673.
Full textYoo, Daniel. "Building Web Based Programming Environments for Functional Programming." Digital WPI, 2012. https://digitalcommons.wpi.edu/etd-dissertations/181.
Full textJama, Fartun. "Integrating secure programming concepts in introductory programming courses." Thesis, Linnéuniversitetet, Institutionen för datavetenskap och medieteknik (DM), 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:lnu:diva-96870.
Full textAlam, Abu S. "A programming system for end-user functional programming." Thesis, University of Gloucestershire, 2015. http://eprints.glos.ac.uk/2738/.
Full textZemkoho, Alain B. "Bilevel programming." Doctoral thesis, Technische Universitaet Bergakademie Freiberg Universitaetsbibliothek "Georgius Agricola", 2012. http://nbn-resolving.de/urn:nbn:de:bsz:105-qucosa-89017.
Full textZuliani, Paolo. "Quantum programming." Thesis, University of Oxford, 2001. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.393364.
Full textMahmood, Muhammad Yasir. "Inexact Programming." Thesis, Blekinge Tekniska Högskola, Sektionen för ingenjörsvetenskap, 2012. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-4351.
Full textMitchell, R. "Literate programming." Thesis, University of Hertfordshire, 1988. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.380654.
Full textRandazzo, Alexander. "Programming Pains." Digital Commons at Loyola Marymount University and Loyola Law School, 2020. https://digitalcommons.lmu.edu/etd/920.
Full textMichlowitz, Jason Lawrence. "A methodology for mapping programming languages to programming problems /." View online, 2006. http://ecommons.txstate.edu/cscitad/2.
Full textQian, Xun. "Continuous methods for convex programming and convex semidefinite programming." HKBU Institutional Repository, 2017. https://repository.hkbu.edu.hk/etd_oa/422.
Full textPatel, Harsida. "Diet planning by goal programming and integer goal programming." Thesis, University of Portsmouth, 1998. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.286085.
Full textBird, Philip. "Unifying programming paradigms : logic programming and finite state automata." Thesis, University of Sheffield, 2000. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.419609.
Full textLones, Michael Adam. "Enzyme genetic programming : modelling biological evolvability in genetic programming." Thesis, University of York, 2003. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.399653.
Full textIlyes, Amy Louise. "Using linear programming to solve convex quadratic programming problems." Case Western Reserve University School of Graduate Studies / OhioLINK, 1993. http://rave.ohiolink.edu/etdc/view?acc_num=case1056644216.
Full textVielma, Centeno Juan Pablo. "Mixed integer programming approaches for nonlinear and stochastic programming." Diss., Atlanta, Ga. : Georgia Institute of Technology, 2009. http://hdl.handle.net/1853/29624.
Full textCommittee Chair: Nemhauser, George; Committee Co-Chair: Ahmed, Shabbir; Committee Member: Bill Cook; Committee Member: Gu, Zonghao; Committee Member: Johnson, Ellis. Part of the SMARTech Electronic Thesis and Dissertation Collection.
Vigerske, Stefan. "Decomposition in multistage stochastic programming and a constraint integer programming approach to mixed-integer nonlinear programming." Doctoral thesis, Humboldt-Universität zu Berlin, Mathematisch-Naturwissenschaftliche Fakultät II, 2013. http://dx.doi.org/10.18452/16704.
Full textThis thesis contributes to two topics in mathematical programming: stochastic optimization and mixed-integer nonlinear programming (MINLP). In the first part, we extend quantitative continuity results for two-stage stochastic mixed-integer linear programs to include situations with simultaneous uncertainty in costs and right-hand side, give an extended review on decomposition algorithm for two- and multistage stochastic linear and mixed-integer linear programs, and discuss extensions and combinations of the Nested Benders Decomposition and Nested Column Generation methods for multistage stochastic linear programs to exploit the advantages of so-called recombining scenario trees. As an application of the latter, we consider the optimal scheduling and investment planning for a regional energy system including wind power and energy storages. In the second part, we give a comprehensive overview about the state-of-the-art in algorithms and solver technology for MINLPs and show that some of these algorithm can be applied within the constraint integer programming framework SCIP. The availability of the latter allows us to utilize the power of already existing mixed integer linear and constraint programming technologies to handle the linear and discrete parts of the problem. Thus, we focus mainly on the domain propagation, outer-approximation, and reformulation techniques to handle convex and nonconvex nonlinear constraints. In an extensive computational study, we investigate the performance of our approach on applications from open pit mine production scheduling and water distribution network design and on various benchmarks sets. The results show that SCIP has become a competitive solver for MINLPs.
Andreotti, Sandro [Verfasser]. "Linear Programming and Integer Linear Programming in Bioinformatics / Sandro Andreotti." Berlin : Freie Universität Berlin, 2015. http://d-nb.info/1066645213/34.
Full textShen, Yijiang. "Binary image restoration by positive semidefinite programming and signomial programming." Click to view the E-thesis via HKUTO, 2007. http://sunzi.lib.hku.hk/HKUTO/record/B39557431.
Full textLoebner, Sarah E. K. "Early Life Epigenetic Programming and Later Psychological Ramifications: Programming Positivity." Scholarship @ Claremont, 2014. http://scholarship.claremont.edu/scripps_theses/407.
Full text沈逸江 and Yijiang Shen. "Binary image restoration by positive semidefinite programming and signomial programming." Thesis, The University of Hong Kong (Pokfulam, Hong Kong), 2007. http://hub.hku.hk/bib/B39557431.
Full textBoberg, Arvid. "Virtual lead-through robot programming : Programming virtual robot by demonstration." Thesis, Högskolan i Skövde, Institutionen för ingenjörsvetenskap, 2015. http://urn.kb.se/resolve?urn=urn:nbn:se:his:diva-11403.
Full textPetre, Marian. "Findings a basis for matching programming languages to programming tasks." Thesis, University College London (University of London), 1989. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.252003.
Full textToczé, Klervie. "Functional Reactive Programming as programming model for telecom server software." Thesis, Linköpings universitet, Programvara och system, 2014. http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-113142.
Full textCarpenter, Steven M. "Visual meta-programming language graphical user interface for generative programming." Monterey, Calif. : Springfield, Va. : Naval Postgraduate School ; Available from National Technical Information Service, 2002. http://library.nps.navy.mil/uhtbin/hyperion-image/02sep%5FCarpenter.pdf.
Full textThesis advisor(s): Mikhail Auguston, Richard Riehle. Includes bibliographical references (p. 89). Also available online.
Wang, Guanglei. "Relaxations in mixed-integer quadratically constrained programming and robust programming." Thesis, Evry, Institut national des télécommunications, 2016. http://www.theses.fr/2016TELE0026/document.
Full textMany real life problems are characterized by making decisions with current information to achieve certain objectives. Mathematical programming has been developed as a successful tool to model and solve a wide range of such problems. However, many seemingly easy problems remain challenging. And some easy problems such as linear programs can be difficult in the face of uncertainty. Motivated by a telecommunication problem where assignment decisions have to be made such that the cloud virtual machines are assigned to servers in a minimum-cost way, we employ several mathematical programming tools to solve the problem efficiently and develop new tools for general theoretical problems. In brief, our work can be summarized as follows. We provide an exact formulation and several reformulations on the cloud virtual machine assignment problem. Then several valid inequalities are used to strengthen the exact formulation, thereby accelerating the solution procedure significantly. In addition, an effective Lagrangian decomposition is proposed. We show that, the bounds providedby the proposed Lagrangian decomposition is strong, both theoretically and numerically. Finally, a symmetry-induced model is proposed which may reduce a large number of bilinear terms in some special cases. Motivated by the virtual machine assignment problem, we also investigate a couple of general methods on the approximation of convex and concave envelopes for bilinear optimization over a hypercube. We establish several theoretical connections between different techniques and prove the equivalence of two seeming different relaxed formulations. An interesting research direction is also discussed. To address issues of uncertainty, a novel paradigm on general linear problems with uncertain parameters are proposed. This paradigm, termed as multipolar robust optimization, generalizes notions of static robustness, affinely adjustable robustness, fully adjustable robustness and fills the gaps in-between. As consequences of this new paradigms, several known results are implied. Further, we prove that the multipolar approach can generate a sequence of upper bounds and a sequence of lower bounds at the same time and both sequences converge to the robust value of fully adjustable robust counterpart under some mild assumptions
Wang, Guanglei. "Relaxations in mixed-integer quadratically constrained programming and robust programming." Electronic Thesis or Diss., Evry, Institut national des télécommunications, 2016. http://www.theses.fr/2016TELE0026.
Full textMany real life problems are characterized by making decisions with current information to achieve certain objectives. Mathematical programming has been developed as a successful tool to model and solve a wide range of such problems. However, many seemingly easy problems remain challenging. And some easy problems such as linear programs can be difficult in the face of uncertainty. Motivated by a telecommunication problem where assignment decisions have to be made such that the cloud virtual machines are assigned to servers in a minimum-cost way, we employ several mathematical programming tools to solve the problem efficiently and develop new tools for general theoretical problems. In brief, our work can be summarized as follows. We provide an exact formulation and several reformulations on the cloud virtual machine assignment problem. Then several valid inequalities are used to strengthen the exact formulation, thereby accelerating the solution procedure significantly. In addition, an effective Lagrangian decomposition is proposed. We show that, the bounds providedby the proposed Lagrangian decomposition is strong, both theoretically and numerically. Finally, a symmetry-induced model is proposed which may reduce a large number of bilinear terms in some special cases. Motivated by the virtual machine assignment problem, we also investigate a couple of general methods on the approximation of convex and concave envelopes for bilinear optimization over a hypercube. We establish several theoretical connections between different techniques and prove the equivalence of two seeming different relaxed formulations. An interesting research direction is also discussed. To address issues of uncertainty, a novel paradigm on general linear problems with uncertain parameters are proposed. This paradigm, termed as multipolar robust optimization, generalizes notions of static robustness, affinely adjustable robustness, fully adjustable robustness and fills the gaps in-between. As consequences of this new paradigms, several known results are implied. Further, we prove that the multipolar approach can generate a sequence of upper bounds and a sequence of lower bounds at the same time and both sequences converge to the robust value of fully adjustable robust counterpart under some mild assumptions
Koch, Thorsten. "Rapid mathematical programming." [S.l.] : [s.n.], 2004. http://deposit.ddb.de/cgi-bin/dokserv?idn=973541415.
Full textAchterberg, Tobias. "Constraint integer programming /." München : Verl. Dr. Hut, 2008. http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&doc_number=017108806&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA.
Full textSarrabezolles, Pauline. "Colourful linear programming." Thesis, Paris Est, 2015. http://www.theses.fr/2015PESC1033/document.
Full textThe colorful Carathéodory theorem, proved by Bárány in 1982, states the following. Given d Å1 sets of points S1, . . . ,SdÅ1 µ Rd , each of them containing 0 in its convex hull, there exists a colorful set T containing 0 in its convex hull, i.e. a set T µ SdÅ1 iÆ1 Si such that jT \Si j • 1 for all i and such that 0 2 conv(T ). This result gave birth to several questions, some algorithmic and some more combinatorial. This thesis provides answers on both aspects. The algorithmic questions raised by the colorful Carathéodory theorem concern, among other things, the complexity of finding a colorful set under the condition of the theorem, and more generally of deciding whether there exists such a colorful set when the condition is not satisfied. In 1997, Bárány and Onn defined colorful linear programming as algorithmic questions related to the colorful Carathéodory theorem. The two questions we just mentioned come under colorful linear programming. This thesis aims at determining which are the polynomial cases of colorful linear programming and which are the harder ones. New complexity results are obtained, refining the sets of undetermined cases. In particular, we discuss some combinatorial versions of the colorful Carathéodory theorem from an algorithmic point of view. Furthermore, we show that computing a Nash equilibrium in a bimatrix game is polynomially reducible to a colorful linear programming problem. On our track, we found a new way to prove that a complementarity problem belongs to the PPAD class with the help of Sperner’s lemma. Finally, we present a variant of the “Bárány-Onn” algorithm, which is an algorithmcomputing a colorful set T containing 0 in its convex hull whose existence is ensured by the colorful Carathéodory theorem. Our algorithm makes a clear connection with the simplex algorithm. After a slight modification, it also coincides with the Lemke method, which computes a Nash equilibriumin a bimatrix game. The combinatorial question raised by the colorful Carathéodory theorem concerns the number of positively dependent colorful sets. Deza, Huang, Stephen, and Terlaky (Colourful simplicial depth, Discrete Comput. Geom., 35, 597–604 (2006)) conjectured that, when jSi j Æ d Å1 for all i 2 {1, . . . ,d Å1}, there are always at least d2Å1 colourful sets containing 0 in their convex hulls. We prove this conjecture with the help of combinatorial objects, known as the octahedral systems. Moreover, we provide a thorough study of these objects
Zhang, Yan. "Dynamic programming speedups /." View abstract or full-text, 2007. http://library.ust.hk/cgi/db/thesis.pl?CSED%202007%20ZHANGY.
Full textGamble, James Graham. "Explicit parallel programming." Thesis, This resource online, 1990. http://scholar.lib.vt.edu/theses/available/etd-06082009-171019/.
Full textMcPhee, Richard. "Compositional logic programming." Thesis, University of Oxford, 2000. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.393413.
Full textToni, Francesca. "Abductive logic programming." Thesis, Imperial College London, 1995. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.490558.
Full textClare, A. R. "Evaluating declarative programming." Thesis, University of East Anglia, 1988. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.235233.
Full textHill, Stephen A. "Functional programming techniques." Thesis, University of Kent, 1989. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.236147.
Full textLongley, Mark. "Functional programming applications." Thesis, University of Kent, 1991. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.303191.
Full textFerreira, Nivea de Carvalho. "Programming uncertain agents." Thesis, University of Liverpool, 2006. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.433730.
Full textHirsch, Benjamin. "Programming rational agents." Thesis, University of Liverpool, 2005. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.415743.
Full textBARBOSA, SIMONE DINIZ JUNQUEIRA. "PROGRAMMING VIA INTERFACE." PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO, 1999. http://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=1814@1.
Full textA indústria de software vem ao longo dos anos aumentando a funcionalidade das aplicações, numa tentativa de satisfazer as necessidades do maior número de usuários possível. Esta solução, no entanto, implica grandes desafios de usabilidade, devido à complexidade cada vez maior destas aplicações. Uma tendência que visa a acomodar as necessidades dos usuários sem sobrecarregar o software com funcionalidade de uso infreqüente é permitir que os próprios usuários finais configurem ou programem as aplicações, através de mecanismos de extensão que suportam um tipo específico de programação, chamado programação feita por usuários finais. Entretanto, grande parte das técnicas existentes para tal não conseguem atingir níveis aceitáveis de utilidade e usabilidade. Este trabalho trata alguns desafios de aplicações extensíveis, propondo uma abordagem que rompe com algumas barreiras entre interface e extensão. Esta abordagem traz para a interface, e ao alcance dos usuários finais, mecanismos de extensão de software com base em recursos semântico-pragmáticos, utilizando cálculos de metáforas e metonímias. Estes mecanismos foram escolhidos devido ao reconhecimento das Ciências Cognitivas do papel que desempenham em nosso raciocínio, em especial quando tentamos descrever ou entender um conceito abstrato ou complexo (Lakoff e Johnson, 1980; Lakoff, 1987; Lakoff, 1993; Ortony, 1993). Descrevemos um modelo de aplicações extensíveis que utiliza uma base de conhecimento onde devem ser representados os elementos do domínio e da aplicação que podem ser estendidos, bem como as classificações necessárias aos mecanismos de extensão. Nosso modelo considera os aspectos comunicativos das aplicações computacionais. Para garantir a consistência entre a aplicação original e a aplicação estendida, seguimos princípios da Engenharia Semiótica (de Souza, 1993) e prevemos, no modelo, a representação de regras que restringem as extensões na interface, a fim de refletir adequadamente as extensões de funcionalidade.
In the past few years, we have witnessed an increase in software functionality as an attempt to meet most users` needs. This approach brings about serious usability challenges, due to an increase in application complexity as well. In order to try and meet users` needs, without overloading the application with functionality that is rarely used, there is a tendency to allow end users to configure or program applications, by means of mechanisms that support the so-called end user programming. However, many existing techniques fail to attain acceptable thresholds of usefulness and usability. This work addresses some of the challenges posed by extensible applications. We follow an approach that drops some walls between interface and extension. This approach brings some extension mechanisms to the interface, and readily accessible to end- users, namely extensions based on the semantic-pragmatic resources of metaphors and metonymies. These mechanisms were chosen due to the acknowledgment of the Cognitive Sciences of their critical role in our reasoning processes, especially when we try to describe or understand complex or abstract concepts (Lakoff e Johnson, 1980; Lakoff, 1987; Lakoff, 1993; Ortony, 1993). We describe an extensible application model that makes use of a knowledge base in which we represent the domain and application elements that may be extended, as well as the necessary classifications for calculating the possible extensions. Our model takes into account the communicative aspects of computer applications, and follows Semiotic Engineering (de Souza, 1993) principles to guarantee the consistency between the original application and the extended one. For that purpose, our model entails the representation of rules that constrain interface amendments, so that extended functionality is adequately reflected at the resulting interface.
La industria de software ha aumentado, a lo largo de los años, la funcionalidad de las aplicaciones, en un intento de satisfacer las necesidades del mayor número de usuarios posible. Esta solución, implica grandes desafíos de usabilidad, debido a la complejidad cada vez mayor de estas aplicaciones. Una tendencia que trata de acomodar las necesidades de los usuarios sin sobrecargar el software con funcionalidad de uso poco frecuente es permitir que los proprios usuarios finales configuren y programen las aplicaciones, a través de mecanismos de extensión que soportan un tipo específico de programación, llamado programación hecha por usuarios finales. Sin embargo, gran parte de las técnicas disponibles no consiguen alcanzar níveles aceptables de utilidad y usabilidad. Este trabajo trata algunos desafíos de aplicaciones extensibles, proponiendo un enfoque que rompe con algunas barreras entre interfaz y extensión. Este enfoque trae para la interfaz, y al alcance de los usuarios finales, mecanismos de extensión de software con base en recursos semántico-pragmáticos, utilizando cálculos de metáforas y metonímias. Estos mecanismos fueron escogidos debido al reconocimiento de las Ciencias Cognitivas del papel que desempeñan en nuestro raciocinio, en especial cuando tentamos describir o entender un concepto abstracto o complejo (Lakoff y Johnson, 1980; Lakoff, 1987; Lakoff, 1993; Ortony, 1993). Describimos un modelo de aplicaciones extensibles que utiliza una base de conocimiento donde deben ser representados los elementos del dominio y de la aplicación que pueden ser extendidos, bien como las clasificaciones necesarias a los mecanismos de extensión. Nuestro modelo considera los aspectos comunicativos de las aplicaciones computacionales. Para garantizar la consistencia entre la aplicación original y la aplicación extendida, seguimos los principios de la Ingeniería Semiótica (de Souza, 1993) y prevemos, en el modelo, la representación de reglas que limitan las extensiones en la interfaz, a fin de reflejar adecuadamente las extensiones de funcionalidad.
Orchard, Dominic Alaistair. "Programming contextual computations." Thesis, University of Cambridge, 2014. https://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.708000.
Full textAlley, Peter J. "Introductory Microcontroller Programming." Digital WPI, 2011. https://digitalcommons.wpi.edu/etd-theses/439.
Full textPerera, Roland. "Interactive functional programming." Thesis, University of Birmingham, 2013. http://etheses.bham.ac.uk//id/eprint/4209/.
Full textMilicevic, Aleksandar Ph D. Massachusetts Institute of Technology. "Advancing declarative programming." Thesis, Massachusetts Institute of Technology, 2015. http://hdl.handle.net/1721.1/99835.
Full textCataloged from PDF version of thesis.
Includes bibliographical references (pages 141-153).
This thesis attempts to unite and consolidate two large and often culturally disjoint programming paradigms: declarative (focusing on specifying what a program is supposed to do, e.g., shuffle an array so that its elements are ordered) and imperative (detailing how the program intention is to be implemented, e.g., by applying the QuickSort algorithm). The ultimate result of such an effort would be a unified programming environment in which both paradigms are seamlessly integrated, specifications are fully and efficiently executable, and programs are written by freely mixing imperative statements and declarative specifications. With the advent of automated constraint solving, executing declarative specifications as standalone programs has become feasible. A number of challenges still remain. To achieve full automation, constraint solvers often impose restrictions on specification languages and their expressiveness; compromises are also made when integrating a (typically logic-based) specification language with a traditional procedural programming language; and finally, applicability is usually limited to specialized algorithmic domains (for which constraint solving is particularly suitable) and programmers comfortable with writing formal logic. This thesis proposes several advances to address these issues. First, a novel constraint solving framework is presented, Alloy*, the first of its kind capable of automatically and reliably solving arbitrary higher-order formulas (written in standard predicate logic) over bounded domains. Second, a new approach to integrating a specification and an implementation language is proposed, where Alloy, a relational logic-based modeling and specification language, is deeply embedded in Ruby. The resulting platform, called [alpha]Rby, uses Alloy* as its back end, and serves both as an Alloy modeling environment with added Ruby scripting layer around it, and as a Ruby programming environment with added executable specifications. Third, the general idea of declarative programming (focusing on what instead of how) is applied to web programming, producing SUNNY, a model-based reactive web framework with a clear separation between data, events (business logic), and security policies. SUNNY is (1) policy-agnostic-allows security policies to be specified individually and independently from the rest of the code, (2) reactive-automatically propagates data updates to all connected clients while enforcing the security policies, (3) mostly declarative-offers a unified sequential view of the entire distributed web system, allowing events to be implemented only in terms of simple modifications to the data model.
by Aleksandar Milicevic.
Ph. D.
Weimann, Oren. "Accelerating dynamic programming." Thesis, Massachusetts Institute of Technology, 2009. http://hdl.handle.net/1721.1/53302.
Full textCataloged from PDF version of thesis.
Includes bibliographical references (p. 129-136).
Dynamic Programming (DP) is a fundamental problem-solving technique that has been widely used for solving a broad range of search and optimization problems. While DP can be invoked when more specialized methods fail, this generality often incurs a cost in efficiency. We explore a unifying toolkit for speeding up DP, and algorithms that use DP as subroutines. Our methods and results can be summarized as follows. - Acceleration via Compression. Compression is traditionally used to efficiently store data. We use compression in order to identify repeats in the table that imply a redundant computation. Utilizing these repeats requires a new DP, and often different DPs for different compression schemes. We present the first provable speedup of the celebrated Viterbi algorithm (1967) that is used for the decoding and training of Hidden Markov Models (HMMs). Our speedup relies on the compression of the HMM's observable sequence. - Totally Monotone Matrices. It is well known that a wide variety of DPs can be reduced to the problem of finding row minima in totally monotone matrices. We introduce this scheme in the context of planar graph problems. In particular, we show that planar graph problems such as shortest paths, feasible flow, bipartite perfect matching, and replacement paths can be accelerated by DPs that exploit a total-monotonicity property of the shortest paths. - Combining Compression and Total Monotonicity. We introduce a method for accelerating string edit distance computation by combining compression and totally monotone matrices.
(cont.) In the heart of this method are algorithms for computing the edit distance between two straight-line programs. These enable us to exploits the compressibility of strings, even if each string is compressed using a different compression scheme. - Partial Tables. In typical DP settings, a table is filled in its entirety, where each cell corresponds to some subproblem. In some cases, by changing the DP, it is possible to compute asymptotically less cells of the table. We show that [theta](n³) subproblems are both necessary and sufficient for computing the similarity between two trees. This improves all known solutions and brings the idea of partial tables to its full extent. - Fractional Subproblems. In some DPs, the solution to a subproblem is a data structure rather than a single value. The entire data structure of a subproblem is then processed and used to construct the data structure of larger subproblems. We suggest a method for reusing parts of a subproblem's data structure. In some cases, such fractional parts remain unchanged when constructing the data structure of larger subproblems. In these cases, it is possible to copy this part of the data structure to the larger subproblem using only a constant number of pointer changes. We show how this idea can be used for finding the optimal tree searching strategy in linear time. This is a generalization of the well known binary search technique from arrays to trees.
by Oren Weimann.
Ph.D.
Little, Greg (Danny Greg). "Programming with keywords." Thesis, Massachusetts Institute of Technology, 2007. http://hdl.handle.net/1721.1/40529.
Full textIncludes bibliographical references (p. 105-108).
Modern applications provide interfaces for scripting, but many users do not know how to write script commands. However, many users are familiar with the idea of entering keywords into a web search engine. Hence, if a user is familiar with the vocabulary of an application domain, they may be able to write a set of keywords expressing a command in that domain. For instance, in the web browsing domain, a user might enter the keywords click search button. This thesis presents several algorithms for translating keyword queries such as this directly into code. A prototype of this system in the web browsing domain translates click search button into the code click(findButton("search")). This code may then be executed in the context of a web browser to carry out the effect. Another prototype in the Java domain translates append message to log into log.append(message), given an appropriate context of local variables and imported classes. The algorithms and prototypes are evaluated with several studies, suggesting that users can write keyword queries with little or no instructions, and that the resulting translations are often accurate. This is especially true in small domains like the web, whereas in a large domain like Java, the accuracy is comparable to the accuracy of writing syntactically correct Java code without assistance.
by Greg Little.
S.M.
Afanasieva, J., Наталія Ігорівна Муліна, Наталия Игоревна Мулина, and Nataliia Ihorivna Mulina. "Programming language C++." Thesis, Сумський державний університет, 2013. http://essuir.sumdu.edu.ua/handle/123456789/31143.
Full text