mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	docs/rosette: Add overview
This commit is contained in:
		
							parent
							
								
									7698dfba5e
								
							
						
					
					
						commit
						242c037158
					
				
					 1 changed files with 19 additions and 6 deletions
				
			
		| 
						 | 
				
			
			@ -147,16 +147,29 @@ S-expressions can be constructed with ``SExpr::list``, for example ``SExpr expr
 | 
			
		|||
Example: Adapting SMT-LIB backend for Rosette
 | 
			
		||||
---------------------------------------------
 | 
			
		||||
 | 
			
		||||
This section will walk through the process of adapting the SMT-LIB functional
 | 
			
		||||
backend (`write_functional_smt2`) to work with another s-expression target,
 | 
			
		||||
`Rosette`_.
 | 
			
		||||
 | 
			
		||||
.. _Rosette: http://emina.github.io/rosette/
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
~~~~~~~~
 | 
			
		||||
 | 
			
		||||
- What is Rosette
 | 
			
		||||
   - Racket package
 | 
			
		||||
   - solver-aided programming language
 | 
			
		||||
   - uses symbolic expressions
 | 
			
		||||
   - able to perform functional verification
 | 
			
		||||
   Rosette is a solver-aided programming language that extends `Racket`_ with
 | 
			
		||||
   language constructs for program synthesis, verification, and more. To verify
 | 
			
		||||
   or synthesize code, Rosette compiles it to logical constraints solved with
 | 
			
		||||
   off-the-shelf `SMT`_ solvers.
 | 
			
		||||
 | 
			
		||||
- link to file (both smtlib and rosette)
 | 
			
		||||
   -- https://emina.github.io/rosette/
 | 
			
		||||
 | 
			
		||||
.. _Racket: http://racket-lang.org/
 | 
			
		||||
.. _SMT: http://smtlib.cs.uiowa.edu/
 | 
			
		||||
 | 
			
		||||
Full code listings for the initial SMT-LIB backend and the converted Rosette
 | 
			
		||||
backend are included in the Yosys source repository under
 | 
			
		||||
:file:`backends/functional` as ``smtlib.cc`` and ``smtlib_rosette.cc``
 | 
			
		||||
respectively.
 | 
			
		||||
 | 
			
		||||
Scope
 | 
			
		||||
~~~~~
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue