I need this answer in Haskell Programming language only. 4. Write a function that adds two polynomials. Ensure that the polynomial produced matches the requirements. addPoly :: (Num a, Eq a) => Poly a -> Poly a -> Poly a For example: > addPoly (P [1]) (P [-1,1]) P [0,1] > addPoly (P [17]) (P [0,0,0,1]) P [17,0,0,1] >addPoly (P [1,-1]) (P [0,1]) P [1] You may find it helpful to write addPoly using two helper functions: one to combine the lists of coefficients, and one to trim trailing zeroes. Your implementation of addPoly should have this property: addPoly p q $$ x == (p $$ x) + (q $$ x)
I need this answer in Haskell Programming language only. 4. Write a function that adds two polynomials. Ensure that the polynomial produced matches the requirements. addPoly :: (Num a, Eq a) => Poly a -> Poly a -> Poly a For example: > addPoly (P [1]) (P [-1,1]) P [0,1] > addPoly (P [17]) (P [0,0,0,1]) P [17,0,0,1] >addPoly (P [1,-1]) (P [0,1]) P [1] You may find it helpful to write addPoly using two helper functions: one to combine the lists of coefficients, and one to trim trailing zeroes. Your implementation of addPoly should have this property: addPoly p q $$ x == (p $$ x) + (q $$ x)
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
I need this answer in Haskell
4. Write a function that adds two polynomials. Ensure that the polynomial produced matches the requirements.
addPoly :: (Num a, Eq a) => Poly a -> Poly a -> Poly a
For example:
> addPoly (P [1]) (P [-1,1])
P [0,1]
> addPoly (P [17]) (P [0,0,0,1])
P [17,0,0,1]
>addPoly (P [1,-1]) (P [0,1])
P [1]
You may find it helpful to write addPoly using two helper functions: one to combine the lists of coefficients, and one to trim trailing zeroes.
Your implementation of addPoly should have this property: addPoly p q $$ x == (p $$ x) + (q $$ x)
![### Adding Polynomials in Haskell
Write a function that adds two polynomials. Ensure that the polynomial produced matches the requirements.
```haskell
addPoly :: (Num a, Eq a) => Poly a -> Poly a -> Poly a
```
#### For example:
```haskell
> addPoly (P [1]) (P [-1,1])
P [0,1]
> addPoly (P [17]) (P [0,0,0,1])
P [17,0,0,1]
> addPoly (P [1,-1]) (P [0,1])
P [1]
```
You may find it helpful to write `addPoly` using two helper functions: one to combine the lists of coefficients, and one to trim trailing zeroes.
Your implementation of `addPoly` should have this property:
```haskell
addPoly p q $$ x == (p $$ x) + (q $$ x)
```](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F4dbff29b-28dc-463b-b3b5-f9f675553082%2Fb43a2d55-3d19-4e0f-970e-fec30f934bb2%2Fkw8buvn_processed.png&w=3840&q=75)
Transcribed Image Text:### Adding Polynomials in Haskell
Write a function that adds two polynomials. Ensure that the polynomial produced matches the requirements.
```haskell
addPoly :: (Num a, Eq a) => Poly a -> Poly a -> Poly a
```
#### For example:
```haskell
> addPoly (P [1]) (P [-1,1])
P [0,1]
> addPoly (P [17]) (P [0,0,0,1])
P [17,0,0,1]
> addPoly (P [1,-1]) (P [0,1])
P [1]
```
You may find it helpful to write `addPoly` using two helper functions: one to combine the lists of coefficients, and one to trim trailing zeroes.
Your implementation of `addPoly` should have this property:
```haskell
addPoly p q $$ x == (p $$ x) + (q $$ x)
```
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution!
Trending now
This is a popular solution!
Step by step
Solved in 3 steps

Recommended textbooks for you

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON

Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education