39 research outputs found

    Using symbolic computation for teaching data structures and algorithm analysis

    No full text

    Using symbolic computation for teaching data structures and algorithm analysis

    No full text

    General Terms

    No full text
    When traditional Big O analysis is rigorously applied to object oriented software, several deficiencies quickly manifest themselves. Because the traditional definition of Big O is expressed in terms of natural numbers, rich mathematical models of objects must be projected down to the natural numbers, which entails a significant loss of precision beyond that intrinsic to order of magnitude estimation. Moreover, given that larger objects are composed of smaller objects, the lack of a general method of formulating an appropriate natural number projection for a larger object from the projections for its constituent objects constitutes a barrier to compositional performance analysis. We recast the definition of Big O in a form that is directly applicable to whatever mathematical model may have been used to describe the functional capabilities of a class of objects. This generalized definition retains the useful properties of the natural number based definition but offers increased precision as well as compositional properties appropriate for object based components. Because both share a common mathematical model, functional and durational specifications can now be included in the code for object operations and formally verified. With this approach, Big O specifications for software graduate from the status of hand waving claim to that of rigorous software characterization

    Using symbolic computation for teaching data structures and algorithm analysis

    No full text

    Student designed machines for a theory of computation course

    No full text

    Essential Discrete Mathematics for Computer Science

    No full text
    vii, 216 hlm.; Ind.; 24 c
    corecore