I have to construct a certain grammar for a given language where the language consists of strings of 0s and 1s that are the binary repr. of odd numbers greater that 6. I also have to create a parse tree for something like 10001 which is 17. How do I go about this problem?
Constructing grammar based on given rules
62 Views Asked by Jaxon Steinhower At
2
There are 2 best solutions below
Related Questions in BINARY
- ELF binary has inconsistency detected by ld.so: dl-call-libc-early-init.c: 37: Assertion `sym != NULL' failed
- How to only estimate neonatal mortality using syncmrates in Stata?
- change binary data like "111 into 001" in python by using if else or using regex
- Error in eval(predvars, data, env) : object 'Juice_practice' not found when running binary logistic regression in r
- How to subtract large binary numbers?
- How to convert n most significant bits in a hexadecimal byte string in Python 3
- Is it possible to represent -3/32 as a binary floating-point value using only 7 bits
- how to copy binary files to the worker nodes on Databricks?
- Decimal to Binary program not working on my local machine but works perfectly on online compiler
- After saving to txt file all of the data is corrupted
- Reading .bson file with Rust
- Why won't my binary search work for numbers that are double digits?
- MIPS Aiken to Binary
- Minimizing the number of basic arithmetic/binary operators needed to arrive at all others
- Resnet50 for binary classification predicts all the images to be of the same class
Related Questions in GRAMMAR
- Need clarification on pumping lemma for context free languages
- Grammar for combinations of Numpy arrays
- What is exactly Ruby's `not` keyword?
- VSCode Extension - Grammar Injection Into Multiple Languages
- Integrating Grammar/Spellcheck Tool in ASP.NET Application for Textarea
- Is the alternative operator in ABNF match first or longest?
- ANTLR4 matches to lexer rule instead of parser rule
- Distinguishing integer and decimal arithmetic with ohm.js
- Trouble with Island Grammar parsing unordered network configuration using Python textx
- ANTLR4 for Function Pointers in C
- Constructing grammar based on given rules
- Is this grammar LR(0) or SLR(1)
- ANTLR4 explain variable declaration error
- Bison ID reduction conflict
- SGF Grammar Parser with Peggy
Related Questions in CONTEXT-FREE-GRAMMAR
- Resolve shift/reduction conflict in grammar for expressions in PLY for calls to embedded functions
- Grammar for access to properties and calls to embedded functions
- Need clarification on pumping lemma for context free languages
- Java CUP produces Shift-Reduce conflict when parsing a grammar for a C++ type language
- Correct labeling for this regular language?
- How to recognize a context free grammar with a rust declarative macro
- Maximum recursion depth exceeded with nltk recursive descent parser
- Constructing grammar based on given rules
- how to find the grammar of this Language?
- ANTLR4 - parse function-like structures in regular text
- Context Free Grammar for L= { a^n b^m c^m d^2n }, where n and m are >= 0
- Is this grammar LALR(1)?
- How can I generate a Context Free Grammar for a specific language
- How to auto-complete JSON syntax strings?
- I have a problem in reducing a grammar to LL(1)
Related Questions in PARSE-TREE
- Constructing grammar based on given rules
- How to represent {} in EBNF syntax parse tree
- How to print a proper parse tree in console using Java?
- ANTLR4 doesnt parse the .g4 file the way I expected
- How come my Antlr ParseTree is null? / How come calling AbstractParseTreeVisitor.visit(ParseTree) is null?
- Algorithm to parse an expression and assinging a value that satisfies the conditions
- How do I retrieve phrases from a NLTK.tree using custom node labels?
- How can I prevent the benepar parser from splitting a specific substring when parsing a string?
- How are these parse tree generated?
- Convert constituent string to Tree object (Stanza)
- ParseCancellationException when using ANTLR4 `parser.file_input()` for Python files
- Print sentence tree without using nltk.tree
- taking input from a txt file and putting inside a Dictionary
- What will be the right algorithm to bottom up parse and reduce a parse tree?
- How to pretty print source code when using a AST that is generated from a CST
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?

To construct a grammar for a language consisting of strings of 0s and 1s that represent binary representations of odd numbers greater than 6, you can:
identify the patterns: Odd numbers in binary always end with a 1. Numbers greater than 6 (in binary, greater than 110) must have at least 4 digits because 111 (7 in binary) is the smallest 3-digit odd number greater than 6.
Define a context-free grammar (CFG) for this language. That grammar needs to make sure that:
You can set:
Sas the start symbol.Bas a non-terminal that generates any binary digit (0 or 1).Fas a non-terminal that generates a string ending in 1.With the grammar:
It starts by making sure the binary representation begins with
1(so it is an actual binary number and not just a string of 0s), and it allows for generation of numbers that are at least 4 digits long and end with a1.Parse Tree for 10001 (17 in binary)
It fits the pattern defined by this grammar: it is a binary number greater than 6 and odd.
Actually, checking the Wikipedia definition of context-free grammar (CFG):
A context-free grammar
Gis a 4-tupleG = (V, Σ, R, S)where:Vis a finite set; each elementv ∈ Vis called a variable. Each variable represents a different type of phrase or clause in the sentence.Σis a finite set of terminals, disjoint fromV, which make up the actual content of the sentence. The set of terminals is the alphabet of the language defined by the grammarG.Ris a finite relation in(V × (V ∪ Σ)*). The members ofRare called productions of the grammar (symbolized byP).Sis the start variable, used to represent the whole sentence. It must be an element ofV.In your case:
S(start),B(binary digits),E(end with 1)0,1S → 1B1(starts and ends with 1, ensuring it is odd and greater than a certain minimum)B → 0B | 1B | ε(generates binary sequences)E → 1(ensures the string ends with 1, making it odd)SThat way, I can use
0x51-dev/cfgin Go.You can execute this example in the playground](https://go.dev/play/p/0FZ27_m9BZt)
It returns: