Write a Python program including the following:
a. A function that receives a list of strings as a parameter, eliminates the following
stop words, and returns the resulting list:
Stop words: a, an, the, punctuation symbols (.,;: ?, etc.)
e.g. Original list:
["There", "is", "a", "little", "dog", "in", "the", "University", ".", "The", "little",
"cat", "saw", "the", "dog", "in", "the", "University", "."]
Resulting list:
["There", "is", "little", "dog", "in", "University", "little", "cat", "saw", "dog", "in",
"University"]
b. A function that receives the list of words (stop words removed) as a parameter
and forms a dictionary, whose keys are the words in the list and whose values are
their frequencies in the text.
e.g. Resulting dictionary:
{"There":1,"is":1,"little":2,"dog":2,"in":2,"University":,"cat":1,"saw":1}
c. A function to remove the duplicate words from the list sent as a parameter.
e.g. Resulting list:
["There", "is", "little", "dog", "in", "University", "cat", "saw"]
d. The last function will receive the list with no duplicates as a parameter, and will
form a list of lists containing 3 word phrases (3-grams).
e.g. Resulting list:
[["There", "is", "little"], ["dog", "in", "University"], ["cat", "saw"]]
Read a text and form a list of words from the input. Using this list, call the above
functions in sequence and generate their outputs.