Racket code only please Using the logical operators, and, or, implies, not, and iff, and atoms representing truth values, we can make a list that would represent proposition: For instance: '(A and (not A)), or '((B iff (A or C)) implies (not (C implies A))) would represent the formal statements (?∧¬?) and ((? ≡(?∨?)→¬(? →?))). We use the following convention when we represent propositions in this way: for every operator – unary or binary – there corresponds at least one pair of parentheses defining its scope (and perhaps more). Thus, the lists ‘(A and not A) and (B iff A or C) are not permitted but ‘((A and ((not A))) and ‘(B iff (((A or C)))) are acceptable. Define substitute, which will take as input a list representing (a) a truth expression, (b) a variable, and (3) an element (of any type.) Substitute will replace all instances of the variable in the truth expression with that element. For example: (substitute '(C or (D or D)) 'D #f) should return '(C or (#f or #f)) and (substitute '(not ((B and A) or (A implies B))) 'B '(#t and C) ) should return '(not (((#t and X) and A) or (A implies (#t and C))) No loops or hash please Allowed functions. Your code must use only the following functions: 1. define, let 2. lambda 3. cons, car, cdr, list, list?, append, empty?, length, equal? 4. and, or, not 5. if, cond 6. map, append-map, andmap, ormap, filter, begin 7. +, -, /, * Thank you!!!
Racket code only please
Using the logical operators, and, or, implies, not, and iff, and atoms representing truth values,
we can make a list that would represent proposition: For instance: '(A and (not A)), or '((B iff (A or C)) implies (not (C implies A))) would represent the formal statements (?∧¬?) and ((? ≡(?∨?)→¬(? →?))).
We use the following convention when we represent propositions in this way: for every operator – unary or binary – there corresponds at least one pair of parentheses defining its scope (and perhaps more). Thus, the lists ‘(A and not A) and (B iff A or C) are not permitted but ‘((A and ((not A))) and ‘(B iff (((A or C)))) are acceptable.
Define substitute, which will take as input a list representing (a) a truth expression, (b) a variable, and (3) an element (of any type.) Substitute will replace all instances of the variable in the truth expression with that element. For example: (substitute '(C or (D or D)) 'D #f) should return '(C or (#f or #f)) and (substitute '(not ((B and A) or (A implies B))) 'B '(#t and C) ) should return '(not (((#t and X) and A) or (A implies (#t and C)))
No loops or hash please
Allowed functions. Your code must use only the following functions:
1. define, let
2. lambda
3. cons, car, cdr, list, list?, append, empty?, length, equal?
4. and, or, not
5. if, cond
6. map, append-map, andmap, ormap, filter, begin
7. +, -, /, *
Thank you!!!
![](/static/compass_v2/shared-icons/check-mark.png)
Trending now
This is a popular solution!
Step by step
Solved in 3 steps
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
The test cases return
'(not #<void>)
'(not #<void>)
Thank you for your help. The test cases cases from the instructions return something different than supposed to.
substitute '(C or (D or D)) 'D #f) should return '(C or (#f or #f))
and (substitute '(not ((B and A) or (A implies B))) 'B '(#t and C) ) should return
'(not (((#t and X) and A) or (A implies (#t and C)))
Right now they return
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)