Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
39 views22 pages

MCS 212 2024 English

This document outlines the assignment details for the course MCS-212 Discrete Mathematics, including submission deadlines, question structure, and grading criteria. It features various mathematical and computational problems, such as proving mathematical statements, calculating permutations, and exploring concepts like finite automata and graph theory. The assignment consists of 20 questions worth 80 marks, with additional marks allocated for viva voce.

Uploaded by

Émmý Róçk
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views22 pages

MCS 212 2024 English

This document outlines the assignment details for the course MCS-212 Discrete Mathematics, including submission deadlines, question structure, and grading criteria. It features various mathematical and computational problems, such as proving mathematical statements, calculating permutations, and exploring concepts like finite automata and graph theory. The assignment consists of 20 questions worth 80 marks, with additional marks allocated for viva voce.

Uploaded by

Émmý Róçk
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

Course Code : MCS-212

Course Title : Discrete Mathematics


Assignment Number : MCA_NEW(1)/212/Assign/2024
Maximum Marks : 100
Weightage : 30%
Last Dates for Submission : 30thApril 2024 (for January Session)
31st October 2024 (for July Session)
This assignment has 20 questions of 80 Marks. Answer all questions. Each question carries 4
marks. Rest 20 marks are for viva voce. You may use illustrations and diagrams to enhance the
explanations. Please go through the guidelines regarding assignments given in the Programme
Guide for the format of presentation.

Q1: Use Mathematical Induction to prove that : 12


+ 22
+ ……..+ n2
= n(n+1)(2n+1)/6
Q2: How many different permutations arepossible of the letters, taken all at a time, of the word:
ASSESSES?
So, there are 1680 different permutations possible of the letters, taken all at a time, from the
word "ASSESSES."

Q3: A die is rolled once. What are the probabilities of the following events:
a. Getting an odd number
b. Getting at least a value 2
c. Getting at most a value 2
d. Getting at least 7

Q4: Draw a hypercube graph Q3 (also called the cubical hypercube). Check whether the
hypercube Q3 is Hamiltonian
To draw the hypercube graph 3Q3, which represents a 3-dimensional hypercube (also known as a
cubical hypercube), we can start by representing each vertex as a binary string of length 3, where
each bit represents a dimension.
Here's how we can draw it:
luaCopy code
000 ----- 001 / | / | 010 ----- 011| | | | | | 100 ---|--- 101 | / | / 110 ----- 111
In this representation, each vertex is labeled with a binary string, and each edge represents a flip
of exactly one bit. For example, the vertex 000 is connected to 001 because they differ by only one
bit.
Now, let's check if the hypercube 3Q3 is Hamiltonian, meaning if there exists a Hamiltonian cycle
in the graph. A Hamiltonian cycle is a cycle that visits every vertex exactly once.
For 3Q3, we can see that every vertex is connected to three other vertices, and there are a total of
eight vertices. We can indeed find a Hamiltonian cycle in 3Q3:
luaCopy code
000 ----- 001 / | / | 010 ----- 011| | | | | | 100 ---|--- 101 | / | / 110 ----- 111
One possible Hamiltonian cycle in 3Q3 is:
000→001→011→010→110→111→101→100→000000→001→011→010→110→111→101→100
→000
This cycle visits every vertex exactly once and returns to the starting vertex, satisfying the
definition of a Hamiltonian cycle.
So, yes, the hypercube 3Q3 is Hamiltonian.

Q5: What is isomorphism? Find, if the following graphs G1 and G2 are isomorphic or not. Explain
how you arrived at your answer.

Isomorphism in graph theory refers to a specific kind of mapping between two graphs. Two graphs
1G1 and 2G2 are considered isomorphic if there exists a bijective function (a one-to-one
correspondence) between their vertices such that the edges between vertices are preserved. In
other words, two graphs are isomorphic if they have the same structure, just with different labels
on the vertices.
To determine whether two graphs 1G1 and 2G2 are isomorphic, we need to find a bijection
between their vertex sets that preserves adjacency. This means that if two vertices are adjacent in
one graph, their corresponding vertices must also be adjacent in the other graph under the
bijection.
Now, let's examine the graphs 1G1 and 2G2 to determine if they are isomorphic. Since I cannot
directly view the graphs, I'll need information about their structures, such as the number of
vertices and edges and the connections between vertices.
Once you provide the necessary information about the structures of 1G1 and 2G2, I can analyze
them to determine if they are isomorphic. Please provide details such as the number of vertices,
the degree of each vertex, and the connections between vertices in each graph. With this
information, I can check if there is a bijection between their vertex sets that preserves adjacency.

Q6: What is a finite automata ? Why is it needed? How is a finite automata represented?. Also
explain the term regular expression with the help of an example.
A finite automaton (plural: automata) is a computational model used in computer science and
formal language theory to recognize patterns within strings of symbols. It's a simple computational
device with a finite set of states, which can transition from one state to another based on inputs,
following predetermined rules.
Why Finite Automata is Needed:
1. Pattern Recognition: Finite automata are used to recognize patterns in strings, which is
essential in various areas like lexical analysis in compilers, text processing, and parsing in
natural language processing.
2. Language Recognition: They are used to recognize languages defined by regular
expressions, allowing for efficient parsing and processing of regular languages.
3. Solving Decision Problems: Finite automata can be used to solve decision problems, such
as determining whether a given input string belongs to a particular language.
Representation of Finite Automata:
Finite automata can be represented using several forms:
1. State Transition Diagram: This is a graphical representation where states are represented
by nodes, and transitions between states are represented by directed edges labeled with
input symbols.
2. State Transition Table: This is a tabular representation where each row represents a state,
and each column represents an input symbol. The entries in the table indicate the next
state for each combination of current state and input symbol.
3. Transition Function: Mathematically, finite automata can be represented using a transition
function, which specifies the next state given the current state and input symbol.
Regular Expression:
A regular expression is a concise and flexible notation for describing patterns in strings. It's a
sequence of characters that define a search pattern, typically used for pattern matching within
strings. Regular expressions are widely used in text processing tasks, such as searching, extracting,
and manipulating text.
Example: Let's say we want to describe a pattern for matching valid email addresses. A regular
expression for this could be:
lessCopy code
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
Explanation:
 ^: Denotes the start of the string.
 [a-zA-Z0-9._%+-]+: Matches one or more characters from the set [a-zA-Z0-9._%+-],
representing the username part of the email address.
 @: Matches the "@" symbol.
 [a-zA-Z0-9.-]+: Matches one or more characters from the set [a-zA-Z0-9.-], representing
the domain name part before the TLD.
 \.: Matches the dot (".") character.
 [a-zA-Z]{2,}: Matches two or more characters from the set [a-zA-Z], representing the top-
level domain (TLD).
 $: Denotes the end of the string.
This regular expression can effectively match most valid email addresses according to common
conventions.

Q7: Differentiate between


a. Deterministic and Non-deterministic finite automata
b. Deterministic and Non-deterministic Turing Machine
c. Moore and Mealy Machine
Let's differentiate between each pair:
a. Deterministic and Non-deterministic Finite Automata (DFA and NFA):
1. Deterministic Finite Automaton (DFA):
 In a DFA, for each state and input symbol, there is exactly one next state.
 The transition function of a DFA is deterministic, meaning it maps each state and
input symbol to a unique next state.
 DFAs are simpler and easier to understand compared to NFAs.
 Deterministic finite automata recognize regular languages.
2. Non-deterministic Finite Automaton (NFA):
 In an NFA, for each state and input symbol, there can be multiple next states or no
next state at all.
 The transition function of an NFA is non-deterministic, meaning it can have multiple
possible transitions for the same input symbol and current state.
 NFAs are more expressive than DFAs and can recognize certain languages that DFAs
cannot.
 Non-deterministic finite automata also recognize regular languages.
b. Deterministic and Non-deterministic Turing Machine (DTM and NTM):
1. Deterministic Turing Machine (DTM):
 In a DTM, for each combination of current state and tape symbol, there is exactly
one transition to a next state.
 The transition function of a DTM is deterministic.
 DTMs are limited in their computational power compared to NTMs.
 Deterministic Turing machines can recognize only the class of languages that are
decidable.
2. Non-deterministic Turing Machine (NTM):
 In an NTM, for each combination of current state and tape symbol, there can be
multiple possible transitions to next states.
 The transition function of an NTM is non-deterministic.
 NTMs have more computational power than DTMs and can solve certain problems
more efficiently.
 Non-deterministic Turing machines can recognize languages beyond those
recognized by deterministic ones, including some undecidable languages.
c. Moore and Mealy Machine:
1. Moore Machine:
 In a Moore machine, outputs are associated with states rather than transitions.
 The output of a Moore machine depends only on the current state, not on the
input.
 Moore machines are named after Edward F. Moore.
 The output is produced after transitioning to the next state.
 Moore machines are simpler to design compared to Mealy machines for certain
applications.
2. Mealy Machine:
 In a Mealy machine, outputs are associated with transitions between states.
 The output of a Mealy machine depends on both the current state and the input.
 Mealy machines can produce outputs faster than Moore machines because outputs
are associated with transitions.
 Mealy machines are named after George H. Mealy.
In summary, the key differences lie in the nature of transitions and outputs: deterministic vs. non-
deterministic, and state-based outputs (Moore) vs. transition-based outputs (Mealy). Each type of
automaton or machine has its own set of advantages and applications.
Q8: Describe the divide-and-conquer approach to solve recurrences ? Explain how this approach
can be used to apply binary search in a sorted list.
The divide-and-conquer approach is a problem-solving strategy that involves breaking down a
problem into smaller subproblems, solving each subproblem recursively, and then combining the
solutions to the subproblems to solve the original problem. This approach is particularly useful for
solving recurrence relations, where the solution to a problem depends on solutions to smaller
instances of the same problem.
Steps in the Divide-and-Conquer Approach:
1. Divide: Break the problem into smaller subproblems that are similar to the original
problem, but of a smaller size.
2. Conquer: Solve each subproblem recursively. If the subproblems are small enough, solve
them directly.
3. Combine: Combine the solutions to the subproblems to obtain the solution to the original
problem.
Binary Search using Divide-and-Conquer Approach:
Binary search is a classic example of a problem that can be solved using the divide-and-conquer
approach. It is used to find the position of a target value within a sorted array or list.
Here's how binary search works using the divide-and-conquer approach:
1. Divide: Compare the target value with the middle element of the array. If the target value
is equal to the middle element, the search is complete. If the target value is less than the
middle element, search the left half of the array. If the target value is greater than the
middle element, search the right half of the array.
2. Conquer: Recursively apply the binary search algorithm to the appropriate half of the
array.
3. Combine: If the target value is found in the array, return its index. Otherwise, if the search
space is empty (i.e., the left and right indices cross each other), the target value is not
present in the array.
Example:
Let's say we have a sorted list [1, 3, 5, 7, 9, 11, 13, 15] and we want to search for the value 9.
1. Divide: Compare 9 with the middle element 7. Since 9 is greater than 7, we search the right
half of the list [9, 11, 13, 15].
2. Conquer: Repeat the process recursively on the right half of the list.
3. Combine: Compare 9 with the middle element 11. Since 9 is less than 11, we search the left
half of [9, 11]. Now 9 is found, and its index (4) is returned.
Binary search has a time complexity of O(log n) due to its divide-and-conquer nature, where n is
the number of elements in the list. This makes it significantly faster than linear search for large
lists.
Q9: What is proposition ? Explain with the help of an example. Explain Disjunction and
Conjunction with the help of truth table for each.
A proposition is a statement that can be either true or false, but not both simultaneously. In logic,
propositions are denoted by letters, symbols, or phrases that represent some assertion or claim.
These statements can be simple or compound, and they form the basic building blocks of logical
reasoning.
Example of Proposition:
1. "The sky is blue."
2. "2 + 2 = 4."
3. "It is raining outside."
4. "All mammals lay eggs."
Each of these statements can be evaluated as either true or false. For instance, statement 1 is
typically true, while statement 4 is false.
Disjunction (OR) with Truth Table:
The disjunction, denoted by ∨A∨B, represents the logical OR operation. It is true if at least one of
the propositions A or B is true.
Truth Table for Disjunction:

A B ∨A∨B

True True True

True False True

False True True

False False False

Conjunction (AND) with Truth Table:


The conjunction, denoted by ∧A∧B, represents the logical AND operation. It is true only if both
propositions A and B are true.
Truth Table for Conjunction:

A B ∧A∧B

True True True

True False False

False True False

False False False

Example:
Let A represent the proposition "It is sunny." and B represent the proposition "It is raining."
1. Disjunction: ∨A∨B represents "It is sunny or it is raining."
 If it is sunny (A is true) OR it is raining (B is true), then the statement is true.
2. Conjunction: ∧A∧B represents "It is sunny and it is raining."
 For this statement to be true, it must be both sunny (A is true) AND raining (B is
true) simultaneously, which is typically not possible. Hence, the statement is false.

Q10: Prove the following theorem by direct proof method: ‘‘The square of an even integer is an
even integer.’’

where a, b, c and d are the inputs to the circuitry.


Q12: Define the terms Domain, Co-domain and Range in the context of a function. Also find the
domain, co-domain and range for a function A to B, where A={1,2,3,4} and
B={1,4,9,16,25}.
Q13: A committee consisting of 2 male and2 female workers is to be constituted from 8 male
and 9 female workers. In how many distinct ways can this be done ?
Q14: In a tennis tournament, each entrant plays a match in the first round. Next, all winners
from the first round play a second-round match. Winners continue to move on to the next
round, until finally only one player is left as the tournament winner. Assuming that tournaments
always involve n = 2k players, for some k, find the recurrence relation for the number rounds in
a tournaments of n players.

Q15: Show, using the pigeonhole principle, that in any group of 30 people, 5 people can always
be found who were born on the same day of the week.

Q16: Define the following in the context of graph, with the help of an example :
a. Complete graph
b. Degree of a vertex
c. Cycle
d. Path
e. Circuit

Q17: What is a bipartite graph ? Explain with the help of an example. Give one or two
applications of bipartite graphs.
A bipartite graph is a graph whose vertices can be divided into two disjoint sets such that no two
vertices within the same set are adjacent. In other words, a bipartite graph is a graph that can be
colored using two colors such that no two adjacent vertices have the same color.
Example:
Consider the following graph:

In this graph, the vertices can be divided into two sets: {A, C, E} and {B, D, F}. Each edge connects a
vertex from the first set to a vertex from the second set, and no two vertices within the same set
are connected by an edge. Therefore, this graph is bipartite.
Applications of Bipartite Graphs:
1. Matching Problems: Bipartite graphs are used to model matching problems, such as
matching job applicants with job openings or assigning tasks to workers.
2. Recommendation Systems: In recommendation systems, bipartite graphs can be used to
model relationships between users and items, where edges represent preferences or
interactions between users and items.

Q18: How Hamiltonian graphs differ from the Eulerian graphs? Give Dirac’s and Ore’s criterion
for the Hamiltonian graphs.
Q19: Differentiate between Eulerian graph andEulerian circuit. Find the Eulerian circuit in the
graph given below(if it exists).

Q20: Write Short notes on following


a. Travelling Salesman Problem
b. Vertex Coloring
c. Edge Coloring
d. Planar graphs
e. Pascal’s Formula
a. Travelling Salesman Problem:
 The Travelling Salesman Problem (TSP) is a classic optimization problem in which a
salesman must visit each of a given set of cities exactly once and return to the starting city,
minimizing the total distance travelled.
 It is a NP-hard problem, meaning there is no known efficient algorithm that can solve it for
all instances.
b. Vertex Coloring:
 Vertex coloring is the assignment of colors to the vertices of a graph such that no two
adjacent vertices have the same color.
 The minimum number of colors needed to color the vertices of a graph is called the
chromatic number of the graph.
 Vertex coloring has applications in scheduling, register allocation in compilers, and solving
graph coloring problems.
c. Edge Coloring:
 Edge coloring is the assignment of colors to the edges of a graph such that no two adjacent
edges have the same color.
 The minimum number of colors needed to color the edges of a graph is called the
chromatic index of the graph.
 Edge coloring has applications in scheduling and designing efficient communication
networks.
d. Planar Graphs:
 A planar graph is a graph that can be drawn in the plane without any edges crossing each
other.
 Planar graphs have applications in circuit design, network topology, and map coloring
problems.

Check-out Our Student Support Services:-


• To visit IGNOU website - ignou.ac.in
• To know more visit ignougalaxy.in
• WhatsApp Us at 7745913167
• To Order Ready to Submit IGNOU Handwritten Assignments [Courier Home-Delivery] -
https://www.ignougalaxy.in/ignou-handwritten-assignments/
• To Order 100% Approval Guaranteed Customised Project & Synopsis-
https://www.ignougalaxy.in/ignou-project-synopsis/
• To Order Assignments Solutions PDF https://www.ignougalaxy.in/ignou-solved-
assignment/

You might also like