Making mathematical reasoning fun
Sponsored Links
This presentation is the property of its rightful owner.
1 / 17

Making Mathematical Reasoning Fun PowerPoint PPT Presentation


  • 104 Views
  • Uploaded on
  • Presentation posted in: General

Making Mathematical Reasoning Fun. Jason Hallstrom (Clemson), Joan Krone (Denison), Joseph E. Hollingsworth (IU Southeast), and Murali Sitaraman (Clemson) This workshop is funded in part by NSF grant DUE-1022941 . Goals. Reasoning Across the Curriculum Not just in Discrete Math

Download Presentation

Making Mathematical Reasoning Fun

An Image/Link below is provided (as is) to download presentation

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 - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


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


Goals

  • 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


Partners

  • Alabama

  • Clemson

  • Cleveland State

  • Denison

  • Depauw

  • IU Southeast

  • Ramapo College

  • Virginia Tech NVC

  • Western Carolina


What reasoning skills are necessary?Concept Inventory


Why?

  • 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.


Courses at All Levels

  • 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


All Levels

  • Collaborative Approach

    • Pairs or small groups

    • In class or homework


Collaborative Method

  • Pairs or small groups

  • With or without tools

  • Each team presents their findings

  • Collaboration both within teams and among teams


Selective Adaptation

  • Pick and choose appropriate reasoning concepts and/or tools

  • Faculty expertise

  • Student background


One Example: Software Engineering Course

  • Usual Topics

    • Requirements analysis

    • Design and specification

    • Component-based implementation

    • Quality assurance

  • Formal Reasoning


Objectives

  • 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


Methods

  • Collaborative learning

    • Teams of 2 to 4 members

    • Read specs

    • Implement specs

    • Verify implementations

    • Build larger systems.


Using the Tools

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


Summary

  • Importance of Reasoning across the Curriculum

  • Tools to Support Reasoning

  • Collaborative Pedagogy includes collaboration between students and between students and faculty


Some Work

  • Binary search specifications

  • Java

  • C++

  • Any other language

  • Are the algorithms correct?

  • Do the implementations work?

  • What’s the difference?


  • Login