- 105 Views
- Uploaded on
- Presentation posted in: General

Making Mathematical Reasoning Fun

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Making Mathematical Reasoning Fun

Jason Hallstrom (Clemson), Joan Krone (Denison), Joseph E. Hollingsworth (IU Southeast), and MuraliSitaraman(Clemson)

This workshop is funded in part by NSF grant

DUE-1022941

- Reasoning Across the Curriculum
- Not just in Discrete Math
- Fundamental part of CS
- Motivating example: binary search “proven” correct

- Supporting Tools
- Supporting Methods
- Applicable to both large universities and small colleges

- Alabama
- Clemson
- Cleveland State
- Denison
- Depauw
- IU Southeast
- Ramapo College
- Virginia Tech NVC
- Western Carolina

- Current software is too large for one person to understand.
- Students need tools for dealing with all sizes of projects.
- Maintenance makes up the majority of jobs.
- Students need to separate specifications from implementations.

- Beginning level: CS110 – Intro to Programming, CS174 – Discrete math at Denison, (others – CPSC101 – CSI, CPSC102 – CS2, Discrete Math at Clemson)
- Use of collaborative approach
- Use of specifications
- Reasoning assistant tool

- Intermediate level: CPSC215 – Software Foundations, (others: CPSC212 – Data Structures) at Clemson
- Contract specifications – comparing informal specs with formal specs
- Mathematical modeling – abstraction
- Generating test data from specs
- Reasoning assistant tool

- Advanced level: CS373 – Theory of Programming Languages and CS349 – Software Engineering at Denison, CP372 – Software Engineering at Clemson
- Formal specifications
- Proofs
- VC generator tool
- Contract based team development using RESOLVE compiler

- Collaborative Approach
- Pairs or small groups
- In class or homework

- Pairs or small groups
- With or without tools
- Each team presents their findings
- Collaboration both within teams and among teams

- Pick and choose appropriate reasoning concepts and/or tools
- Faculty expertise
- Student background

- Usual Topics
- Requirements analysis
- Design and specification
- Component-based implementation
- Quality assurance

- Formal Reasoning

- Read formal specifications
- Create test points from the specs

- Use component specifications to build larger systems
- Work in teams

- Carry out formal verification of components
- Use automated rules

- Collaborative learning
- Teams of 2 to 4 members
- Read specs
- Implement specs
- Verify implementations
- Build larger systems.

- http://www.cs.clemson.edu/group/resolve

- Importance of Reasoning across the Curriculum
- Tools to Support Reasoning
- Collaborative Pedagogy includes collaboration between students and between students and faculty

- Binary search specifications
- Java
- C++
- Any other language
- Are the algorithms correct?
- Do the implementations work?
- What’s the difference?